티스토리 뷰
반응형
3 way merge에 대한 개념 및 예제
2 way merge
here | there | 2 way merge |
A | A | A |
H | B | ? conflict |
C | T | ? conflict |
H | T | ? conflict |
branch => here, there
☞ here + there (2 way merge)
A + A → A
H + B →? 충돌, 알 수 없음
C + T →? 충돌, 알 수 없음
H + T →? 충돌, 알 수 없음
3 way merge
here | base | there | 2 way merge | 3 way merge |
A | A | A | A | A |
H | B | B | ? conflict | H |
C | C | T | ? conflict | T |
H | D | T | ? conflict | ? conflict |
branch => here, there
base => here, there의 조상 branch
☞ here + there (2 way merge)
A + base(A) + A → A : here, base, there 3개다 동일하므로 A
H + base(B) + B → H : 수정된 내용은 H라는 것을 base를 통해 알 수 있다.
C + base(C) + T → T : 수정된 내용은 T라는 것을 base를 통해 알수 있다.
H + base(D) + T →? : base를 통해서 H, T 모두 수정된 것을 알 수 있고, 결정권을 알려주기 위해 충돌을 알려준다.
3 way merge는 혁신적인 방법으로 GIT의 큰 특징이다.
반응형
'Git' 카테고리의 다른 글
GIT CLI - Branch & Conflict 7. 수업을 마치며 git workflow / cheery-pick / rebase (0) | 2021.05.26 |
---|---|
GIT CLI - Branch & Conflict 6. 외부도구를 이용한 병합 (0) | 2021.05.26 |
GIT CLI - Branch & Conflict 4.4. 병합: 같은파일, 같은부분 병합 (0) | 2021.05.25 |
GIT CLI - Branch & Conflict 4.3. 병합: 같은파일, 다른부분 병합 (0) | 2021.05.25 |
GIT CLI - Branch & Conflict 4.1. 병합 Merge 4.2. 병합: 서로 다른 파일 병합 (0) | 2021.05.25 |
댓글
공지사항