git fetch와 git pull의 차이

Sheryl Yun·2023년 8월 25일
0

개발 상식 쌓기

목록 보기
8/11

git fetch

개념

  • 로컬 Git에게 원격 저장소에서 최신 메타데이터 정보를 확인하라는 명령을 전달
  • 원격 저장소(origin)에 있는 변경 사항들을 로컬 저장소에 가져오기 전에 변경된 내역을 확인만 하는 경우 (변경된 데이터를 로컬 git에 가져오지는 않음)

사용 예: 작업한 파일을 깃허브에 올리고 퇴근했는데 다음 날 누군가 내 파일에 수정을 했는지 알고 싶을 때

사용법

  1. fetch 하기
git fetch 원격저장소명(origin)
  1. fetch 후 해당 브랜치로 checkout하기
  • fetch를 확인할 수 있는 브랜치 내역 보는 명령어
    git branch -r
  • 예: origin/master라고 알려주는 모습

    => git checkout origin/master를 쳐서 해당 브랜치로 들어간다.
  1. git log로 fetch한 커밋 내역 확인 => 누가 프로젝트에 커밋을 했는지 안 했는지 확인 가능

git pull

  • 원격 저장소에 있는 변경 사항들을 로컬 저장소로 가져와 합치는 명령어
  • fetch와 달리 로컬 저장소에 변경된 내용을 병합

요약

  • 둘다 원격저장소의 내용을 가져오는데 사용됨
  • fetch는 가져온 변경 내용을 로컬에 영향을 미치지 않으며, 병합하기 전에 확인하는 용도로 사용
  • pull은 가져온 변경 내용을 로컬에 병합하여 로컬에 영향을 미침
    • 하지만 로컬에서 작업하다가 변경된 내용을 pull할 경우 충돌이 일어날 수 있다.
  • 웬만해선 fetch 후 pull을 로컬이 깨끗한 상태에서 사용하는 게 좋다.

참고 자료

Git Fetch와 Git Pull 명령어의 차이점
git fetch pull 사용법, fetch pull 차이점 알아보기

profile
데이터 분석가 준비 중입니다 (티스토리에 기록: https://cherylog.tistory.com/)

0개의 댓글