1. 충돌
- 같은 파일의 같은 라인을 다르게 수정한 서로 다른 브랜치를 병합할 때 발생한다
- 같은 위치의 코드를 동시에 수정하면 발생!
예시) 같은 라인의 코드를 서로 다른 브랜치가 각각 다른 내용으로 수정하고 커밋하는 경우
1. branch : sd1 | 2. branch : sd2 |
![]() |
![]() |
branch sd1과 branch sd2를 병합하려 한다
결과
같은 파일의 같은 위치에 서로 다른 코드를 작성했기 때문에 오류가 발생한다.
수정한 두 개의 코드 중 어떤 것을 적용할지 선택해야 한다
+병합 편집기에서 보는 화면
2. 병합 취소하기
방금 전의 병합을 취소하려면 --abort옵션을 실행한다.
git merge --abort
3. 충돌 해결하기
- branch sd1을 기준으로 하고, branch sd2를 branch sd1에 병합하려 할 때
- sd1의 코드를 저장하려면 : '현재 변경사항 수락' 클릭
- sd2의 코드를 저장하려면 : '수신 변경사항 수락' 클릭
4. 병합 방법
(1) fast forward
(2) three way