깃허브 fetch

OneTwoThree·2023년 7월 24일
0

깃허브

목록 보기
14/14

출처

출처


pull을 실행하면 원격 저장소 내용을 가져와 자동으로 병합한다.
원격 저장소 내용을 확인만 하고 로컬 데이터와 병합은 하고 싶지 않은 경우 fetch를 사용할 수 있다.


clone을 통해 원격 저장소를 복제한 저장소를 만들 수 있다. 클론해서 작업하는 상황에서 원격 저장소에 변경 사항이 생겼다면 그 내용을 가져와 클론 저장소를 최신 상태로 유지해주어야 한다.

fetchpull이 이럴 때 등장한다. git fetch는 로컬 깃에게 원격 저장소의 최신 데이터 정보를 확인하라고 명령한다. 변경사항이 있는지 확인만 하고 변경된 데이터를 실제로 가져오지는 않는다.

git pull은 원격 저장소에서 변경된 메타데이터 정보를 확인하고 최신 데이터를 복사하여 로컬 깃에 가져온다.

git fetch를 사용하면 마지막 pull 이후 원격 저장소에 적용된 변경 사항을 확인할 수 있다. 원격 저장소에 변경 사항이 존재하는 상황에서 pull을 바로 실행하면 현재 브랜치의 파일이 변경되며 작업 내용이 날라갈 수 있다. 따라서 fetch로 변경 사항을 먼저 확인한 후 pull을 실행하는 것이 더 안전하다.


출처

pull은 원격 저장소와 지역 저장소 모두 최신 commi에 위치하게 된다. 즉 지역 저장소에 내용이 반영된다. 반면 fetch는 지역 저장소와 연결된 원격 저장소는 최신 commit에 위치하게 되지만 지역 저장소에는 변경이 없다. 원격 저장소에서 파일만 다운받고 merge는 하지 않는다. 따라서 변경사항을 비교할 때 유용하다. 비교 후 git merge origin/main으로 원격 저장소의 내용을 지역 저장소로 merge 해줄 수 있다.

0개의 댓글