두 명령어 모두 원격 저장소(git remote url)에서 업데이트된 정보를 가져온다.
이 비슷한 점 때문에 둘의 차이가 헷갈릴 수 있다.
결론부터 말하면
[ic]git pull[/ic] = [ic]git fetch[/ic] + [ic]git merge[/ic] 다.
git fetch 작동 방식
원격저장소에서 새롭게 업데이트된 정보를 가져온다. 하지만 새로운 정보를 바로 로컬에 적용시키지 않는다.
다시 말해 [ic]git fetch[/ic]는 로컬에 적용하기 전 충돌 관련 문제가 없는지 확인하는 용도로 쓰인다.
문제가 없다면 [ic]git merge[/ic]를 통해 작업 완료한다.
git pull 작동 방식
[ic]git pull[/ic]은 원격 저장소에 업데이트된 정보를 가져와 바로[ic]merge[/ic]한다.
귀찮은 분은 그냥 [ic]git pull[/ic]을 이용하면 된다.
다만 미리 확인 하는 작업이 생략되기 때문에 merge conflict에러를 만날 수 있다.
댓글