[Git] git fetch & git pull 차이점

yerim·2025년 1월 12일
0

Git

목록 보기
3/3

git fetch & git pull

pull과 fetch는 모두 원격 저장소에서 데이터를 가져올 때 사용한다.
차이점과 각 명령어를 사용해야하는 경우에 대해 알아보았다.




1. git fetch

  • 로컬에는 없지만 원격 저장소에는 있는 변경 사항을 모두 가져오지만 작업 디렉토리에 자동으로 Merge 하지 않는다.
  • 작업 디렉토리에 아무런 변경이 일어나지 않는다.
  • 변경 사항을 로컬 브랜치에 적용하려면 git mergegit rebase 를 사용하여 수동으로 합친다.
$ git fetch <remote>
  • git fetch를 사용하는 경우
    • 주로 원격 저장소에서 최신 상태를 확인하고 로컬 저장소에 반영되기 전에 변경 사항을 검토하려는 경우에 사용된다.
    • git pull 은 충돌이 발생할 수 있기 때문에 여러 사람과 작업하는 경우 git fetch 를 사용하여 원격 브랜치를 확인한 후 적용한다.

2. git pull

  • 원격 저장소에서 변경 사항을 가져올 뿐만 아니라 자동으로 로컬 브랜치와 Merge 시킨다.
  • git fetchgit merge (or git rebase )를 한번에 수행한다.
  • 변경 사항을 직접 로컬 작업 디렉토리에 적용한다.
git pull
  • git pull을 사용하는 경우
    변경 사항을 가져오면서 바로 로컬 저장소에 적용되므로 변경 사항을 빠르게 반영하려는 경우 git pull 을 사용할 수 있다.
profile
쌓아가는 중

0개의 댓글