상세 컨텐츠

본문 제목

[Git] 3-way merge

Knowledge/Git

by winCow 2021. 4. 20. 20:03

본문

3-way merge는 충돌을 줄일 수 있는 병합 방법이다.

 

base의 내용인 A, B, C, D를 각각 here, there이라는 branch에서 수정하되, here에서는 B와 D를 각각 H로, there에서는 C와 D를 각각 T로 수정한다고 가정해 보자. 2-way merge로 병합한다면, here과 there을 비교하게 되므로, 내용이 일치하는 A 이외에는 모두 충돌이 발생하게 된다.

 

한편, 3-way merge로 병합한다면, base를 기준으로 하여 병합이 일어난다. 즉, base의 원래 내용인 B와 비교하여, there branch는 변함 없이 B이고 here branch의 값이 H로 변했으므로, H가 최신 내용이라고 판단하여 H로 업데이트된다. C도 마찬가지로 T로 업데이트된다. here, there에서 모두 수정된 D만이 H와 T 중 어느 것으로 업데이트할 것인지에 대해 충돌을 일으킨다.

'Knowledge > Git' 카테고리의 다른 글

[Git] back up  (0) 2021.04.25
[Git] Merge  (0) 2021.04.18
[Git] Branch  (0) 2021.04.17
[Git] Git 명령어  (0) 2021.04.16
[Git] Repository 생성  (0) 2021.04.13

관련글 더보기

댓글 영역