티스토리 뷰
$ git rebase -i HEAD~3
$ git merge --squash TARGET_BRANCH
Squash
merge할 브랜치의 커밋 이력을 하나로 압축한 별도의 커밋을 만들고 헤드 브랜치에 merge한다. 일반 merge와 다르게 하나의 부모커밋(헤드브랜치 기준)만 갖는다.
rebase에 대한 내용은 여기를 참조
-i는 interactive
HEAD~3은 3번째 전 커밋까지 (이전 하나의 커밋은 HEAD^)
해당 명령어를 입력하면
vi에디터가 보여진다.
pick은 해당 커밋을 사용한다는 거고
squash는 이전 커밋에 같이 합친다는 내용이다.
커맨드를 수정한 후 :wq를 누르면
다른 vi창이 뜨면서 커밋메세지를 rewrite할 수 있다.
출처: http://meetup.toast.com/posts/39
'프로그래밍 > git' 카테고리의 다른 글
[git] Reset vs Revert (0) | 2018.07.23 |
---|---|
[git] Stashing (0) | 2018.07.23 |
[git] Merge vs Rebase (0) | 2018.07.23 |
git과 jira 연동하기 (0) | 2018.07.20 |
git과 git flow (0) | 2018.02.02 |
댓글