원격 브랜치를 로컬 저장소로 복사
우리는 아래의 포스팅에서 로컬 저장소의 브랜치(branch)를 서버(원격) 저장소로 전송하여 서버(원격) 저장소에 브랜치를 만드는 방법을 확인했습니다.
이제는 반대로 서버(원격) 저장소에 있는 브랜치를 로컬 저장소로 복사하는 방법을 확인하겠습니다.
브랜치 장에서 브랜치 생성과 동시에 이동하는 방법을 학습했는데, 사용법은 다음과 같습니다.
# 브랜치 생성과 동시에 이동하기
$ git checkout -b <브랜치 이름>
원격 브랜치를 로컬 저장소로 복사하는 방법은 여기서 서버(원격) 저장소의 브랜치를 지정해 주는 것을 다음과 같이 추가해 주면 됩니다.
# 원격 브랜치를 로컬 저장소로 복사
$ git checkout -b <브랜치 이름> <원격 저장소 브랜치>
<원격 저장소 브랜치>는 “원격 저장소 이름”/”브랜치 이름”의 형식으로 입력합니다.
예를 들어, 서버(원격) 저장소 이름이 origin이고, origin의 hotfix 브랜치를 hotfix2라는 이름의 브랜치로 로컬 저장소에 복사하기 위해서는 $ git checkout -b hotfix2 origin/hotfix 라고 실행하면 되겠습니다.
다음 화면과 같습니다.
$ git branch -vv 로 목록을 확인한 결과 정상적으로 생성 및 복사 되었음을 확인할 수 있습니다.
로컬 저장소의 브랜치에 업스트림 연결
서버(원격) 저장소로 전송(push)할 때 -u 옵션 또는 --set-upstream 옵션을 사용해 업스트림 설정을 동시에 하였습니다.
브랜치별로 업스트림 정보를 설정할 수 있습니다.
다음과 같이 사용합니다.
# 브랜치에 업스트림 설정
$ git branch -u <원격 저장소 브랜치>
<원격 저장소 브랜치>는 “원격 저장소 이름”/”브랜치 이름”의 형식으로 입력합니다.
다음과 같이 브랜치 목록을 확인한 결과 bugfix의 업스트림은 origin/bugfix2 임을 확인했습니다.
bugfix 브랜치의 업스트림 설정을 변경하기 위해 bugfix 브랜치로 체크아웃합니다.
checkout으로 bugfix 브랜치로 작업 브랜치를 변경한 다음, bugfix 브랜치의 업스트림을 origin/hotfix로 변경하기 위해 $ git branch -u origin/hotfix 라고 실행한 화면이 다음과 같습니다.
업스트림 설정 변경 후 git branch -vv 로 목록을 다시 확인해 보니 변경되었음을 알 수 있습니다.
소스트리에서도 이러한 업스트림을 변경할 수 있습니다.
다음 화면과 같이 왼쪽 사이드 메뉴에 브랜치 목록에서 변경하고자 하는 브랜치에 마우스를 가져가서 마우스 오른쪽 버튼을 클릭하면 나오는 팝업 메뉴에서 [원격 브랜치 추적]에 마우스를 가져가면, 설정할 수 있는 업스트림 목록이 나옵니다.
현재 설정되어 있는 업스트림 앞에는 체크 표시가 되어 있으며,
변경하고자 하는 업스트림을 클릭하면 다음과 같이 다시한번 확인하는 메시지 창이 나타납니다.
여기서 [예]를 클릭하면 정보가 변경된 것을 알 수 있습니다.
다음에는 원격 브랜치 정보를 삭제하고 삭제 시 동기화 문제를 살펴보겠습니다.
감사합니다.
'코딩해보니 > Git' 카테고리의 다른 글
[Git_52] 태그(Tag) - 사용법 (관련 명령어) (0) | 2023.05.10 |
---|---|
[Git_51] 원격 브랜치 삭제 및 삭제시 동기화 문제 (0) | 2023.05.09 |
[Git_49] 원격 브랜치 - 로컬 브랜치 이름과 원격 브랜치 이름을 다르게 설정하기 (0) | 2023.04.27 |
[Git_48] 서버(원격) 저장소 - 원격 브랜치의 이해 (0) | 2023.04.25 |
[Git_47] 서버(원격) 저장소에서 내려 받기 - Fetch (0) | 2023.04.20 |
댓글