fetch
는 git pull 명령처럼 원격 저장소
로 부터 파일을 내려받는 명령입니다. pull
은 내려받을 때 자동으로 병합을 해주었으나, fetch
명령은 자동으로 병합이 되지 않습니다.
fetch
를 수행하게 되면 원격 저장소의 최신 커밋을 임시 브랜치로 내려받습니다. 그리고 개발자는 이 브랜치를 직접 병합해서 커밋을 적용시키게됩니다.
git fetch 원격_저장소_URL
그러면 fetch
가 뭔지 알았으니 직접 사용해보도록 하겠습니다. 지난번에 실습한 리포지토리를 그대로 사용하도록 하겠습니다.
먼저git clone
명령을 통해서 원격 저장소를 복제한 작업 공간을 만들어 주세요. 이 작업을 완료하면 원본 작업 디렉토리와 복사된 작업 디렉토리 두 개가 존재하게 됩니다.
git clone 원격_저장소_URL 복사할_폴더명
그 다음 원본 작업 디렉토리로 돌아와서 t1.txt
를 수정하고 커밋합니다.
fetch
를 수행합니다.
git fetch 원격_저장소_URL
fetch
이후 git log
로 확인해보니 최신 커밋이 적용되지 않았음을 볼 수 있습니다.
그러면 fetch
로 가져온 커밋을 적용시켜보도록 하겠습니다. fetch
한 변경사항은 임시 브랜치에 저장되어 있다고 했으니, 적용은 merge
명령을 통해 수행합니다.
git merge 원격_저장소_별칭/브랜치명
git log
로 확인해본 결과 변경사항이 제대로 적용되었음을 볼 수 있습니다.