Git
pull과 fetch의 차이!
돌건
2021. 3. 19. 15:47
1. pull
- 원격 저장소 (Remote Repository)로부터 최신의 파일 내용을 로컬 저장소에 가져오고 병합(Merge)한다. (git fetch + git merge)
- 브랜치의 최근 커밋 스냅샷을 가리키는 HEAD 포인터가 'origin/브랜치명'을 가리킨다.
2. fetch
- 원격 저장소 (Remote Repository)로부터 최신의 파일 내용을 로컬 저장소에 가져오기만 한다. (병합 X)
- 로컬 브랜치의 HEAD 포인터가 가리키는 곳은 변하지 않고, 원격 저장소에서 가져온 'origin/브랜치명'는 해당 브랜치의 최신 커밋을 가리킨다.
- 'git diff HEAD origin/브랜치명' 명령어를 통해 로컬과 원격 저장소의 차이를 알 수 있다.
- 'git merge origin/브랜치명' 명령어를 실행하면 git pull을 실행한 상태와 같아진다.