아래 사이트들을 참고했습니다.
https://jeong-pro.tistory.com/106
https://velog.io/@devmin/git-conflict-solution-basic
git merge를 하는 과정에서
아래와 같이 충돌이 발생했습니다.
충돌이 발생하면서 위에서 어떤 파일에서 충돌되었는지 알려줍니다.
여기서는 auto merged가 되지 않기 때문에 우리가 직접 알려준 파일을 선택해서
fix 해줘야 합니다!!
아래처럼 branch를 이동을 하려고 해도 fix먼저 하라고 합니다.
그래서 git status로 상황을 확인해보면, merged가 된 것과
unmerged, 즉 merged 되지 않은 파일을 아래에서 보여줍니다!
친절하게 paths 도 알려주네요!
이런 경우 직접 위의 path를 들어가서 직접 파일을 들여다봐야 합니다.
와.. 아래처럼, 고쳐야 되는 것은 친절하게 빨간색으로 ! 모양을 tool에서 표시해주네요.
그리고 새로 추가된 것은 초록색의 + 모양으로 보여줍니다.
들어가 보면!
<<<<<<HEAD
master안의 코드
======
새롭게 추가할 lee안의 코드
>>>>>>lee
안에 아래처럼 코드가 있는 것을 확인할 수 있습니다.
바로 저부분을 수정해달라는 겁니다.
여기서는 아마, master의 형상에서는 저쪽 번 줄에는 lee 코드가 없는 것이죠.
master에서 lee branch 코드를 합치는 것이기 때문에
master에서 63~66번 줄은 다른 줄이 있는데
(<<HEAD와 ===사이에 아무 코드가 없음),
lee에서는 63~66번 줄에 새롭게 추가하여 부분이라서 형상이 충돌합니다!!
이런 경우에서는 우리가 구현하고자 하는 기능을 추가해야 하기 때문에
lee의 코드를 사용하면 됩니다.
이제 아래처럼 수정을 하고
git merge --continue로 계속하려 하자
아직 그대로 라네요.
바로, 수정을 안 하고 git add를 안 해서 그렇습니다.
git add .이후
(git add src/main..... jsp)
(이럴 경우에는 unmerged 된 파일만 잡아도 된다, 그게 변경사항을 최소화시킨다)
git merge --continue를 하자
아래와 같이 merge 하는 vim으로 이동됩니다.
git log로 log를 확인하면
잘 commit이 된 것을 확인할 수 있습니다.
git push origin master로 지금 형상을 push 하면 끝!
merge가 잘된 모습
'Programming > Git' 카테고리의 다른 글
[Git][3]Merge하기 (0) | 2021.08.12 |
---|---|
[Git][2]Github연결 (0) | 2021.07.04 |
[Git][1]Git (0) | 2021.07.04 |