최신화된 develop를 나의 작업 중인 브랜치로 가지고 오는 경우 내가 아는 작업의 방법은 아래와 같았다.
git remote update
git switch develop
git pull origin develop
git switch 나의 작업브랜치
git merge develop
//이후 merge 해결
그런데 최근 홀로 작업하던 프로젝트를 팀원들과 함께 작업을 하며, develop를 자신의 브랜치로 pull 해오라
는 이야기가 헷갈려 각각의 정의를 정리해보았다.
모든 원격 브랜치를 업데이트하여 최신 상태로 갱신한다. 하지만, 로컬에서 변동 사항을 병합하지는 않는다.
현재 위치하고 있는 원격 브랜치만 업데이트한다. 하지만, 로컬에서 변동 사항을 병합하지는 않는다.
현재 위치하고 있는 원격 브랜치를 업데이트하고 로컬에서 변동 사항을 병합한다.
로컬 브랜치를 업데이트할 때 사용한다.
<aside>
💡 git pull 의 명령어 자체가 git fetch
와 git merge
를 합쳐놓은 것이다. git fetch는 원격저장소에 commit 중 로컬에 없는 신규 commit을 가져오는 것이고 그 후에 merge를 하기 때문에 merge conflict이 발생할 수 있다.
</aside>