branch를 병합할 때 같은 파일에 대한 수정사항이 다르면 충돌이 일어난다.
충돌 예시
team: Tigers
<<<<<<< HEAD
manager: kenneth
=======
manager: Deborah
>>>>>>> conflict-1
coach : adsf
members:
- Linda
- William
- David
충돌이 발생했을 경우 충돌 사항을 수정한 뒤
git add . 이후 git commit 해서 병합을 진행할 수 있다.
그러나 충돌 사항이 복잡해서 당장 해결하기 어려운 경우 아래 코드로 병합을 중단 할 수 있다.
git merge --abort
rebase 에서도 동일하다.
충돌 사항이 복잡해서 당장 해결하기 어려운 경우 아래 코드로 rebase 하기 전으로 되돌릴 수 있고,
git rebase --abort
충돌 부분을 수정 했다면 git add . 후 아래 코드로 충돌이 모두 해결될 때까지 반복 해야한다.
git rebase --continue
💡 TMI 정보
rebase는 merge와 다르게 rebase할 대상 브랜치에서 rebase 완료한 후 다시 원래 브랜치로 돌아와 merge 해주어야 한다.
예를들어, main브랜치 에서 develop브랜치의 최신 커밋을 rebase 한다면,
develop 브랜치에서 git rebase main 을 통해 rebase를 완료하면
main 브랜치로 돌아가 git merge develop 함으로써 두개의 브랜치를 합칠 수 있다.