git rebase
실습 환경: Mac OS & zsh with oh-my-zsh
이번 내용은 git merge-2 와 이어지는 내용입니다.
이번엔 git rebase 를 살펴봅시다!
git rebase 를 이용해 merge 해보도록 하겠습니다.
현재 branch 상황
hotfix2 merge 되돌리기
hotfix3 branch 변경 후 commit 하기
hotfix3 branch 에서 git log –graph 실행 결과
hotfix3 branch 에서 gitlog –graph 실행 결과
master branch 에서 git log 실행 결과
git rebase 사용
1. git checkout hotfix3 & git rebase master
- 충돌이 발생합니다. hotfix3 branch 에서 변경한 new1.py 와 master branch 에서 변경한 new1.py 가 다르기 때문에 충돌이 발생합니다.
new1.py파일에 가서 충돌을 해결합시다.
충돌 후 hotfix3 branch new1.py
git add & git rebase –continue
두번째 충돌 후 hotfix3 branch new1.py
hotfix3 branch 에서 git log 실행 결과
master branch 에서 git log 실행 결과
아직까지 merge 안됨!!
git merge hotfix3 –no-ff
merge 후 master branch 에서 git log 실행 결과
git rebase -i <구역>구역>
merge 후 commit message 를 합쳐줍니다.
git rebase -i 하기 전 git log
git rebase -i HEAD~~ 실행 후 git log
- fixup 한 “2nd update new1.py in hotfix3” 의 commit 이 사라진것을 확인할 수 있습니다.
This post is licensed under CC BY 4.0 by the author.