튜토리얼: Git 원격 URL 업데이트
Git 원격 URL를 업데이트하세요:
- 다른 Git 리포지토리 호스트에서 기존 프로젝트를 가져온 경우.
- 조직이 새로운 도메인 이름으로 새로운 GitLab 인스턴스로 프로젝트를 이동한 경우.
- 프로젝트 이름이 동일한 GitLab 인스턴스의 새로운 경로로 바뀐 경우.
참고:
기존 원격에서 로컬 작업 복사본이 없으면 이 튜토리얼이 필요하지 않습니다. 대신 새로운 GitLab URL에서 프로젝트를 클론할 수 있습니다.
이 튜토리얼에서는 다음 방법으로 로컬 리포지토리의 원격 URL를 업데이트하는 방법을 설명합니다:
- 완료되지 않은 로컬 변경 내용을 잃지 않음.
- 아직 GitLab에 게시되지 않은 변경 사항을 잃지 않음.
- 새로운 URL에서 리포지토리의 새 클론 작업 복사본을 생성하지 않음.
이 튜토리얼에서는 git-remote
명령을 사용하여
원격 및 추적 리포지토리 관리하기 합니다.
Git 원격 URL를 업데이트하려면:
시작하기 전에
다음이 필요합니다:
- Git 리포지토리와 새로운 GitLab URL가 있는 GitLab 프로젝트.
- 새로운 GitLab URL로 마이그레이션할 프로젝트의 클론 로컬 작업 복사본.
- Git 로컬 머신에 설치됨.
- 로컬 머신의 명령줄 인터페이스(CLI)에 접근할 수 있어야 합니다. macOS에서는 Terminal을 사용할 수 있습니다. Windows에서는 PowerShell을 사용할 수 있습니다. Linux 사용자는 아마도 시스템의 CLI에 익숙할 것입니다.
- GitLab에 대한 인증 자격증명:
- Git 원격 URL를 업데이트하려면 GitLab에 인증해야 합니다. GitLab 계정이 기본 사용자 이름과 비밀번호 인증을 사용하는 경우 CLI에서 인증하려면 이중 인증(2FA)를 비활성화해야 합니다. 또는 SSH 키를 사용하여 GitLab에 인증할 수 있습니다.
기존 및 새로운 URL 확인하기
Git 원격 URL를 업데이트하기 위해 리포지토리에 대한 기존 및 새로운 URL를 확인하세요:
-
터미널이나 명령 프롬프트를 엽니다.
-
로컬 리포지토리 작업 복사본으로 이동합니다. 디렉터리를 변경하려면
cd
를 사용합니다:cd <repository-name>
-
각 리포지토리에는
origin
이라는 기본 원격이 있습니다. 원격 리포지토리에 대한 현재 원격 fetch 및 push URL를 보려면 다음을 실행합니다:git remote -v
-
반환된 URL를 복사하여 기록합니다. 일반적으로 동일합니다.
-
새로운 URL를 가져옵니다:
- GitLab로 이동합니다.
- 왼쪽 사이드바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 Code > Repository를 선택하여 프로젝트의 Repository 페이지로 이동합니다.
- 오른쪽 상단 모서리에서 Code를 선택합니다.
-
git
을 사용한 인증 및 클론 방법에 따라 HTTPS 또는 SSH URL 중 하나를 복사합니다. 확실하지 않은 경우 이전 단계의origin
URL과 동일한 방법을 사용하세요. - 복사한 URL를 기록합니다.
Git 원격 URL 업데이트
Git 원격 URL을 업데이트하려면:
-
터미널 또는 명령 프롬프트를 엽니다.
-
로컬 저장소 작업 복사본으로 이동합니다. 디렉토리를 변경하려면
cd
를 사용합니다:cd <repository-name>
-
원격 URL을 업데이트합니다.
<new_url>
을 복사한 새 저장소 URL로 바꿉니다:git remote set-url origin <new_url>
-
원격 URL 업데이트가 성공했는지 확인합니다.
다음 명령은 fetch 및 push 작업 모두에 대한 새 URL을 표시하고, 로컬 브랜치를 나열하며, 이들이 GitLab에 추적되고 있음을 확인합니다:
git remote show origin
- 업데이트가 실패한 경우, 이전 단계로 돌아가서 올바른
<new_url>
인지 확인하고 다시 시도합니다.
여러 저장소의 원격 URL을 업데이트하려면:
-
git remote set-url
명령을 사용합니다. 업데이트하려는 원격의 이름으로origin
을 바꿉니다. 예를 들어:git remote set-url <remote_name> <new_url>
-
각 원격 URL 업데이트를 확인합니다:
git remote show <remote_name>
원격 URL을 업데이트한 후에는 이전과 같이 Git 명령을 계속 사용할 수 있습니다.
다음 git fetch
, git pull
, 또는 git push
는 GitLab의 새 URL을 사용합니다.
축하합니다, 당신은 성공적으로 저장소의 원격 URL을 업데이트했습니다.
(선택 사항) 원본 원격 URL 유지
프로젝트에 원격 위치가 하나 이상 있을 수 있습니다.
예를 들어, GitHub에서 호스팅되는 프로젝트에서 포크한 저장소가 있지만, GitHub에 pull request를 만들기 전에 GitLab에서 포크의 작업을 하고 싶습니다.
원본 원격 URL을 유지하면서 업데이트하고, 새와 오래된 원격 URL을 모두 유지하려면 기존 원격을 수정하는 대신 새 원격을 추가할 수 있습니다.
이 접근 방식을 사용하면 원본 저장소에 대한 접근을 유지하면서 점진적으로 새 URL로 전환할 수 있습니다.
새 원격 URL을 추가하려면:
-
터미널 또는 명령 프롬프트를 엽니다.
-
로컬 저장소 작업 복사본으로 이동합니다.
-
새 원격 URL을 추가합니다.
<new_remote_name>
을 새 원격의 이름으로 바꾸고,new-origin
예를 들 수 있으며,<new_url>
을 새 저장소 URL로 바꿉니다:git remote add <new_remote_name> <new_url>
-
새 원격이 추가되었는지 확인합니다:
git remote -v
이제 원본 원격과 새 원격을 모두 사용할 수 있습니다. 예를 들어:
- 원본 원격으로 푸시하려면:
git push origin main
- 새 원격으로 푸시하려면:
git push <new_remote_name> main