Merge와 Rebase의 차이

kgh239·2020년 12월 10일
0

2개의 브렌치를 하나로 병합할 때 merge 또는 rebase을 사용 할 수 있다.
이번 블로그에서는 이 두개의 방법에 차이를 알아보겠다.

Merge

  • 말 그래도 브런치들을 병합하는 것이다.
  • commit history로 같이 병합 된다.

Rebase

  • base을 교체 함으로 브런치를 병합한다.
  • base는 브런치가 생성될 때 기준점을 의미한다.
  • base가 바뀜으로 인해 commit history에 변경이 생긴다.

squash

  • rebase을 이용하여 git의 commit 여러개를 하나로 합칠 수 있다.
  • commit을 깔끔하게 관리 할 수 있다.

주의

일반적인 로컬 브랜치에서 작업할 때는 히스토리를 정리하기 위해서 Rebase 할 수도 있지만, 리모트 등 어딘가에 Push로 내보낸 커밋에 대해서는 절대 Rebase 하지 말아야 한다.

profile
방랑하는 개발자

0개의 댓글