Git&Github

18. [Git] CONFLICT 3 WAY MERGE

drizzle0925 2021. 8. 26. 08:57
728x90

git은 충돌은 해결할 때 3 WAY MERGE라는 방법을 사용합니다.

3 WAY MERGE란 무엇인가에 대해서 알아보겠습니다.

 

2 WAY MERGE

 

 

here와 there라는 브랜치를 생성합니다.

 

 

브랜치를 생성하면 조상이 되는 브랜치와 같은 내용 적용됩니다.

 

 

그럼, 여기서 here 브랜치와 there 브랜치를 수정하고 병합할 때 어떻게 되는가? 에 대해서 알아보겠습니다.

4가지 경우의 수 중에 3가지가 충돌이 발생하게 됩니다.

 

 

이렇게 2가지의 브랜치를 비교해서 병합하는 것을 2 WAY MERGE라고 합니다.

 

3 WAY MERGE

그리고 3개의 브랜치를 비교해서 병합하는 것을 3 WAY MERGE라고 합니다.

here의 there의 조상을 base라고 명칭 하겠습니다.

 

 

heae, base, there을 비교해서 수정된 부분만을 반영해서 병합할 때 더 많은 부분을 자동화할 수 있습니다.

이것이 git이 충돌을 처리하는 방법인 3 WAY MERGE입니다.

728x90