Git기본 흐름

clone, fetch, pull 기본

원격 저장소를 처음 가져올 때와 최신 상태를 받아올 때 쓰는 clone, fetch, pull의 차이를 정리합니다.

마지막 수정 2026년 3월 19일

기본 패턴

text
# 처음 가져올 때
git clone <url>

# 원격 변경만 먼저 확인할 때
git fetch

# 원격 변경을 받아와 현재 브랜치에 반영할 때
git pull

설명

  • clone은 원격 저장소를 처음 내 컴퓨터로 복사해 오는 명령입니다.
  • fetch는 원격의 새 커밋과 브랜치 정보를 가져오지만, 현재 작업 브랜치에는 자동으로 합치지 않습니다.
  • pull은 보통 fetch 후 현재 브랜치에 변경을 통합하는 동작까지 포함합니다.
  • 따라서 충돌 가능성을 먼저 보고 싶거나, 바로 합치고 싶지 않을 때는 fetch가 더 안전합니다.
  • 입문 단계에서는 pull을 자주 쓰지만, 협업이 복잡해질수록 fetch로 먼저 상황을 확인하는 습관이 유용해집니다.

짧은 예제

text
git clone https://github.com/example/project.git

cd project
git fetch origin
git log --oneline HEAD..origin/main

문제가 없으면
git pull origin main

빠른 정리

명령언제 쓰는가
git clone저장소를 처음 내려받을 때
git fetch원격 변경을 먼저 확인할 때
git pull원격 변경을 바로 현재 브랜치에 반영할 때
origin/<branch>fetch 후 원격 추적 브랜치 상태를 볼 때
HEAD..origin/main내가 아직 반영하지 않은 원격 커밋을 볼 때

주의할 점

git pull은 편하지만 자동 통합까지 일어나므로, 변경량이 크거나 충돌이 걱정될 때는 git fetch로 먼저 보고 판단하는 편이 더 안전합니다.

참고 링크

3 sources