Git브랜치와 협업

rebase 기본과 언제 쓰는가

merge와 rebase가 무엇이 다르고, 내 작업 브랜치를 최신 기준 위에 다시 얹는 rebase를 언제 선택하는지 정리합니다.

마지막 수정 2026년 3월 22일

기본 패턴

text
git switch feature/login
git fetch origin
git rebase origin/main

설명

  • merge는 두 브랜치의 흐름을 합치는 방식이고, rebase는 내 브랜치 커밋들을 다른 기준 위에 다시 재배치하는 방식입니다. 결과 히스토리 모양이 달라집니다.
  • 실무에서 rebase를 자주 쓰는 이유는 작업 브랜치를 최신 main 위에 깔끔하게 다시 얹어서, merge 전에 충돌을 미리 정리하고 히스토리를 더 직선적으로 유지하기 위해서입니다.
  • 핵심 감각은 "rebase는 커밋을 다시 쓰는 작업"이라는 점입니다. 그래서 아직 혼자 작업 중이거나, 팀에서 rebase를 허용한 개인 브랜치에서 특히 잘 맞습니다.
  • 이미 여러 사람이 공유해 pull한 브랜치를 rebase하고 강제 push하면 다른 사람 히스토리와 충돌할 수 있습니다. 그래서 rebase는 강력하지만 협업 규칙과 함께 써야 합니다.
  • 좋은 기준은 단순합니다. "공유 전 정리"에는 rebase, "공유 후 안전한 통합"에는 merge 또는 PR merge를 먼저 떠올리면 실수가 줄어듭니다.

빠른 정리

명령의미
git rebase origin/main내 브랜치를 최신 main 위로 다시 얹기
장점히스토리 정리, 충돌 조기 해결
주의점커밋 해시가 바뀜
잘 맞는 상황개인 작업 브랜치 정리

주의할 점

이미 다른 사람이 기반으로 삼은 공유 브랜치를 무심코 rebase하면 협업자가 같은 커밋을 다시 받아야 하는 상황이 생깁니다. rebase는 "내가 소유한 히스토리인가"를 먼저 확인하고 쓰는 편이 안전합니다.

참고 링크

2 sources