본문 바로가기

협업/git

git remote branch 가져오기

원격 저장소 가져오기

git checkout remote_branch 하는 경우 오류가 나는 경우가 있다.

$ git checkout talk_master

$ git checkout -t origin/talk_master

fatal: Cannot update paths and switch to branch 'feature/rename' at the same time

error: pathspec 'talk_master' did not match any file(s) knwon to git. 등의 에러가 발생한다.

 

원격저장소의 브랜치를 가져오는 경우에 대상 원격 브랜치가 없어서 발생한 에러인데,

저장소를 그대로 clone을 하던지, pull을 해도 받아지지않는다.

 

원격 저장소 업데이트

원격 브랜치에 접근하기 위해 git remote를 갱신해 줄 필요가 있다.

$ git remote update

 브랜치 update가 됨을 볼 수 있다.

 

원격 저장소 branch 확인

원격 저장소의 branch 리스트 확인

$ git branch -r 

로컬, 원격 모든 저장소의 branch 리스트 확인

$ git branch -a

 

원격 저장소의 branch 가져오기

-t 옵션  로컬에 동일한 이름의 branch를 생성하면서 해당 branch로 checkout을 한다.

git checkout -t [원격 저장소의 branch 이름]

$ git checkout -t origin/talk_master

 

-r 옵션  branch의 이름을 변경해서 가져올 수 있다.

git checkout -b [생성할 branch 이름] [원격 저장소의 branch 이름]

$ git checkout -b talk_master_ssj origin/talk_master

 

 

원격저장소의 branch 참고하기

수정내역을 원격 저장소에 push 하지 않지만 해당 branch를 참고하고 싶은 경우 사용

git checkout [원격 저장소의 branch 이름]

$ git checkout origin/talk_master

 

아무런 옵션없이 원격저장소의 branch를 checkout하면

'detached HEAD'상태로 소스를 보고 변경을 할 수 있지만

변경사항들을 commit, push 할 수 없고 다른 branch로 checkout 하면 사라진다.

 

참고  https://cjh5414.github.io/get-git-remote-branch/

'협업 > git' 카테고리의 다른 글

git pull 시 문제 해결  (0) 2020.05.11
커밋 메시지를 요청하는 git merge  (0) 2020.05.11
master에서 작업한 경우 해결방안  (0) 2020.05.07
git stash 명령어 활용하기  (0) 2020.05.06
Git - pull request  (0) 2020.05.05