[Git] Repository의 Branch 로컬 저장소로 가져오기
Repository에 있는 master branch 외 다른 branch를 새롭게 가져올 경우는 많은데, 방법에 대해 소개한다.
Remote 정보 Update
Repository에 어떤 branch를 가지고 있는지 정보를 git remote update
명령어로 업데이트 할 수 있다.
$ git remote update Fetching origin Tremote: Enumerating objects: 3, done. remote: Counting objects: 100% (3/3), done. remote: Total 4 (delta 3), reused 3 (delta 3), pack-reused 1 Unpacking objects: 100% (4/4), done. From http://github.seccae.com/system-ip/sci_lite * [new branch] seperated_r_w -> origin/seperated_r_w
Remote 정보 출력
실제 repository에 branch list를 git branch -r
명령어로 출력해준다.
$ git branch -r origin/HEAD -> origin/master origin/area_perf_opt origin/fixed_to_incr_ver origin/master origin/pause_bug_fix origin/seperated_r_w origin/taxi_wbuf_16
Branch를 로컬 저장소로 가져오기
만약 위 branch list에서 origin/seperated_r_w
를 가져오고자 할 때 다음과 같이 수행하여 branch를 로컬 저장소로 가져올 수 있다.
$ git checkout -t [Target Branch Name]
$ git checkout -t origin/seperated_r_w Branch 'seperated_r_w' set up to track remote branch 'seperated_r_w' from 'origin'. Switched to a new branch 'seperated_r_w' $ git branch master * seperated_r_w
만약 branch를 가져와서 다른 이름으로 변경하고 싶을 때는 아래와 같이 명령어를 수행하면 된다.
$ git checkout -b [생성할 branch 이름] [원격 저장소의 branch 이름]
Clone 시 특정 Branch를 로컬 저장소로 가져오기
$ git clone -b [branch name] --single-branch [repository URL] [dir name]
만약 처음 git clone을 할 때 특정 branch만 clone을 하고자 할 때는 위와 같은 명령어로 수행 가능하다.
참고로 현재 local branch의 연결 정보를 보기 위해서 다음 명령어를 통해 확인 가능하다.
$ git branch -vv b1 95bb2bb [g2/b1] Implement sub function * b2 a76ff3b [g2/b2] Add b.out binary file main 9cd26e2 [g2/main] Initial commit
Reference
- https://cjh5414.github.io/get-git-remote-branch/