
GitHub Pull Request(PR)에서 종종 등장하는 아래와 같은 메시지는 병합(Merge)이 불가능한 충돌 상태임을 의미합니다.
"This branch has conflicts that must be resolved"
이 메시지는 병합하려는 브랜치와 기준 브랜치 간에 동일한 파일의 동일한 위치가 서로 다르게 수정되었음을 뜻합니다.
git checkout main # 또는 develop 등 기준 브랜치 이름
git pull origin main
git checkout your-feature-branch
git merge main
이 시점에 충돌(conflict) 메시지가 뜨고, 충돌된 파일 목록이 출력됩니다.
충돌이 발생한 파일을 열어 아래와 같은 Conflict 마커를 찾습니다.
<<<<<<< HEAD
// 현재 브랜치의 코드
=======
// 병합 대상 브랜치의 코드
>>>>>>> main
<<<<<<<, =======, >>>>>>> 등의 마커도 반드시 삭제git add .
또는 충돌 파일만 스테이징하려면:
git add src/main/java/.../SecurityConfig.java
git commit -m "커밋 메시지"
git push origin your-feature-branch