여러개의 커밋을 하나로 합치고 싶을 때,

몇몇 커밋의 메세지를 편집하고, 삭제하고 싶을 때,

복잡한 과정의 rebase가 필요할 때

이런 상황에 활용하면 좋은 명령이 바로 rebase의 interactive옵션이다!

git rebase -i 옵션 (--interactive)


git rebase는 대부분 브랜치 병합 목적으로 주로 활용되지만, 현재 브랜치의 HEAD포인터를 이동시킬 수 있는 특성을 활용해서 커밋 히스토리를 수정하는 데에도 활용한다. --interactive 옵션은 대화형으로 실행하는 옵션인데 시각적으로 커밋 로그들과 옵션을 나열해주기 때문에 실수하지 않고 수정할 수 있도록 도와준다.

본 포스팅에서는 rebase를 활용해서 커밋들을 수정, 삭제, 추가하는 내용과 Rebasing Merge에 대해서 간단하게 다뤄볼 것이다.

준비하기

우선 git 레포지토리를 준비한다. 아래 사진처럼 미리 5개의 커밋을 기록해둔 상태이다.

Untitled