티스토리 뷰
14. 브랜치 충돌
- 앞서 설명했던 충돌과 똑같은 맥락이다.
- 브랜치 끼리 병합할 때, 똑같은 소스코드의 내용이 수정되어 있는 경우
어떤 소스가 우선권 있는지 모르므로 사용자에게 충돌을 알린다.
1. 브랜치 한개 더 추가
- anotherVer 라는 브랜치를 한개 더 추가한다.
- 아래처럼 총 3개 master, ajax_use(이하 A), anotherVar(이하 B) 브랜치가
존재 하는 상황
2. anotherVer 브랜치에서 소스 수정
- B 브랜치에서 소스 수정한다.
- 일부러 Anohter Branches 버전이라고 넣었다.
3. master에 B 병합해보자
- Merge anotherVer into current branch 선택
4. master 소스와 겹쳐서 에러난다.
5. 수동으로 소스 수정해주고 저장한뒤
6. Resolve Confilcts > Mark Resolved 선택하여 충돌 해결 되었음을 알린다.
7. 수정된 소스 commit 해보자
친절하게도 conflict 내용이 commit's comment에 자동으로 입력되어있다.
8. 올바르게 commit 되었음을 확인
9. 충돌 일어나면 수정할 때 옵션이 있는데, 3번 항목처럼 master에 B 병할때를 기준
- Mine : 브랜치 내용
- Theirs : master
내용으로 병합하겠다는 내용이다.
'■ 개발이력관리 ■ > Git' 카테고리의 다른 글
[rejected] master -> master (non-fast-forward) (0) | 2020.06.02 |
---|---|
15. 브랜치 충돌 최소화 하기 (0) | 2018.04.27 |
13. 브랜치 만들고 병합하기 (0) | 2018.04.27 |
12. Conflict 충돌 (0) | 2018.04.27 |
11. 버전 이력을 특정 시점으로 돌아가되 이력은 남긴다 - Revert (0) | 2018.04.27 |
댓글