
git merge처럼 branch 를 합치는 방법중 하나이다.
Commit history를 깔끔하게 관리할 수 있다.
rebase 뜻 그대로, '조상이 되는 branch를 재지정한다'라고 이해하면 훨씬 편하다.(원리는 아래
그림으로 설명)
위 그림은, 부모 branch인 C2로부터 파생된 C3(master), C4(experiment)를 병합하는 과정이다.
git merge 명령어를 통해 3-way-merge로 새로운 커밋을 생성한다.
git log 통해 Commit history를 확인하면, C3, C4의 모든 커밋 내역이 모두 확인된다.

 -
branch를 병합한다는 점에서만 merge와 동일하다.
rebase의 경우 C4 이후로 파생될 branch들을 모두 하나의 commit으로 합친 후, 부모 branch를 C3로 재지정한다.
즉, 최종적으로는 최신화된 C3 (master)를 기준으로 단 하나의 commit만을 남기게 된다.
git rebase (branch name): branch name 기준으로 rebase 실행 명령어 (일반적으로 - master를 기준으로 진행)
git rebase -i (브랜치명): 사용자가 rebase를 진행하면서 commit 메시지를 직접 수정 (git rebase -h를 통해 -i 이외 다른 명령어들을 추가로 확인할 수 있다.)
git rebase --abort: rebase 진행 중단 (rebase가 완료된 이후에도 적용 가능)
git rebase --continue: conflict, 혹은 다른 이유로 인해 중단된 rebase를 재개
역시 git master 용민님...👍