반응형

Merge conflict

https://a070415.tistory.com/entry/Git-%EC%86%8C%EC%8A%A4%ED%8A%B8%EB%A6%ACSourcetree-%EB%B3%91%ED%95%A9Merge

 

[Git] 소스트리(Sourcetree) 병합(Merge)

Merge -> 다른 브랜치의 내용을 현재 check out된 브랜치에 병합하는 것. 병합 테스트를 위해 FirstBranch에 '첫번째 브랜치' 라는 주석을 추가하고 commit / push를 진행합니다. 문제가 없다면 병합이 되고,

junn97.com

병합(merge)시 같은 라인의 코드를 수정하였을 경우 충돌(conflict) 이 발생하며, 다음을 통해 어떻게 해결을 해야하는지 알아보겠습니다.


충돌을 발생시키기 위해서 SecondBranch에 주석을 넣어준 후 commit / push을 진행합니다.

 

Merge

병합할 부분에 체크아웃을 한 후에 상단의 병합을 눌러 진행을 합니다.


충돌 병합

 

같은 라인의 코드를 수정하였으므로 conflict가 발생 하였습니다.

 

 

네모박스 상단의 경우 현재브랜치에서의 코드 내용이며, 하단의 경우 병합할 브랜치에서 충돌이 되는 내용입니다.

 

<<< Head === >>> 브랜치 이름

내용을 삭제한 후, 충돌되는 코드를 적절히 수정해 줍니다.


충돌해결

 

 

해결 후 우클릭 - 충돌해결 해결된 것으로 표시를 하여 sourcetree에 수정사항을 알려줍니다.

 

 

최종적으로 커밋을 하면 병합이 정상적으로 진행이 됩니다.


결과

Master 브랜치 화면

 

병합 후 Master 화면을 보시면 첫번째 브랜치와 두번째 브랜치의 내용이 합쳐진 것을 확인 하실 수 있습니다.

반응형

+ Recent posts