git 원격 저장소에 다른 개발자가 작업한 feature 브랜치를 가져오려고 git checkout -b feature/test1 origin/feature/test1
명령어를 사용했는데, 계속 아래 에러가 발생했다.
'origin/feature/test1' is not a commit and a branch 'feature/test1' cannot be created from it
로컬 브랜치를 해당 원격 브랜치를 추적하도록 아래 명령어를 사용해봤지만 추적하지 못했다.
git branch --set-upstream-to=origin/feature/test1 feature/test1
기존 브랜치를 로컬에 clone할 때, --single-branch
옵션을 사용했기 때문이다. 보통은 아래 명령어로 브랜치를 clone할 것이다.
git branch -b {branch-name} --single-branch {저장소 URL}
--single-branch
옵션을 사용하면 특정 브랜치만 추적하기 때문에 원격 저장소의 다른 브랜치를 인식하지 못한다. 이 경우, 다른 원격 브랜치를 가져와야 한다면 몇 가지 추가적인 단계가 필요하다.
git remote set-branches --add origin feature/test1
git fetch origin
git checkout --track origin/feature/test1