개발관련/Git

Git에서 모든 원격 분기를 복제하는 방법

Rateye 2021. 11. 2. 10:25
728x90
반응형
질문 : Git에서 모든 원격 분기를 복제하는 방법은 무엇입니까?

masterdevelopment 브랜치가 있으며 둘 다 GitHub로 푸시됩니다. d를 clone pull fetch , master 브랜치 이외의 다른 것은 다시 가져올 수 없습니다.

나는 분명한 것을 놓치고 있다고 확신하지만 매뉴얼을 읽었고 전혀 기쁨이 없습니다.

답변

먼저 원격 Git 저장소를 복제하고 여기에 cd 합니다.

$ git clone git://example.com/myproject
$ cd myproject

다음으로 저장소의 로컬 브랜치를 살펴보세요.

$ git branch
* master

그러나 저장소에 다른 분기가 숨어 있습니다! -a 플래그를 사용하여이를 볼 수 있습니다.

$ git branch -a
* master
  remotes/origin/HEAD
  remotes/origin/master
  remotes/origin/v1.0-stable
  remotes/origin/experimental

업스트림 지점을 빠르게 살펴보고 싶다면 직접 확인할 수 있습니다.

$ git checkout origin/experimental

그러나 해당 분기에서 작업하려면 다음을 통해 자동으로 수행되는 로컬 추적 분기를 만들어야합니다.

$ git checkout experimental

그리고 당신은 볼 것입니다

Branch experimental set up to track remote branch experimental from origin.
Switched to a new branch 'experimental'

여기에서 "새 분기"는 단순히 분기가 인덱스에서 가져 와서 로컬에서 생성된다는 것을 의미합니다. 이전 줄에서 알 수 있듯이 분기는 일반적으로 origin / branch_name 분기를 의미하는 원격 분기를 추적하도록 설정됩니다.

이제 지역 지점을 보면 다음과 같은 내용이 표시됩니다.

$ git branch
* experimental
  master

git remote 사용하여 둘 이상의 원격 저장소를 추적 할 수 있습니다.

$ git remote add win32 git://example.com/users/joe/myproject-win32-port
$ git branch -a
* master
  remotes/origin/HEAD
  remotes/origin/master
  remotes/origin/v1.0-stable
  remotes/origin/experimental
  remotes/win32/master
  remotes/win32/new-widgets

이 시점에서 상황이 상당히 미쳐 gitk 를 실행하여 무슨 일이 일어나는지 확인하십시오.

$ gitk --all &

 

출처 : https://stackoverflow.com/questions/67699/how-to-clone-all-remote-branches-in-git
728x90
반응형