원격 브랜치를 로컬 저장소로 복사
우리는 아래의 포스팅에서 로컬 저장소의 브랜치(branch)를 서버(원격) 저장소로 전송하여 서버(원격) 저장소에 브랜치를 만드는 방법을 확인했습니다.
[Git_48] 서버(원격) 저장소 - 원격 브랜치의 이해
원격 브랜치의 이해 Git을 사용한 협업에서 서버 저장소에 대해 알아보았습니다. 우리는 브랜치를 공부하면서 브랜치를 만들고 병합하는 등의 작업을 통해 브랜치 운용을 어떻게 할 수 있는지
wishlan.tistory.com
이제는 반대로 서버(원격) 저장소에 있는 브랜치를 로컬 저장소로 복사하는 방법을 확인하겠습니다.
브랜치 장에서 브랜치 생성과 동시에 이동하는 방법을 학습했는데, 사용법은 다음과 같습니다.
# 브랜치 생성과 동시에 이동하기
$ 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 |
댓글