[Git] fetch

bami·2022년 4월 8일
0

Git

목록 보기
29/30
post-thumbnail

fetch

fetchgit pull 명령처럼 원격 저장소로 부터 파일을 내려받는 명령입니다. pull은 내려받을 때 자동으로 병합을 해주었으나, fetch명령은 자동으로 병합이 되지 않습니다.

fetch를 수행하게 되면 원격 저장소의 최신 커밋을 임시 브랜치로 내려받습니다. 그리고 개발자는 이 브랜치를 직접 병합해서 커밋을 적용시키게됩니다.

git fetch 원격_저장소_URL

fetch 실습

그러면 fetch가 뭔지 알았으니 직접 사용해보도록 하겠습니다. 지난번에 실습한 리포지토리를 그대로 사용하도록 하겠습니다.

먼저git clone 명령을 통해서 원격 저장소를 복제한 작업 공간을 만들어 주세요. 이 작업을 완료하면 원본 작업 디렉토리와 복사된 작업 디렉토리 두 개가 존재하게 됩니다.

git clone 원격_저장소_URL 복사할_폴더명

그 다음 원본 작업 디렉토리로 돌아와서 t1.txt를 수정하고 커밋합니다.



이렇게 되면 원본 작업 디렉토리는 한 번 변경이 있는 상태이고, 복사된 작업 디렉토리는 변경이 일어나기 전 상태로 각각 유지되고 있습니다. 이 상태에서 복사한 작업 디렉토리로 이동하여 fetch를 수행합니다.

git fetch 원격_저장소_URL

fetch 이후 git log로 확인해보니 최신 커밋이 적용되지 않았음을 볼 수 있습니다.

그러면 fetch로 가져온 커밋을 적용시켜보도록 하겠습니다. fetch한 변경사항은 임시 브랜치에 저장되어 있다고 했으니, 적용은 merge 명령을 통해 수행합니다.

git merge 원격_저장소_별칭/브랜치명

git log로 확인해본 결과 변경사항이 제대로 적용되었음을 볼 수 있습니다.

0개의 댓글