본문 바로가기
Q&A해결2024년 5월 3일1분 읽기

Git merge conflict 해결이 안 됩니다

깃
깃초보
조회 697댓글 3

팀 프로젝트에서 git merge를 하면 충돌이 발생합니다.

$ git merge feature/login
Auto-merging src/App.js
CONFLICT (content): Merge conflict in src/App.js
Automatic merge failed; fix conflicts and then commit the result.

파일을 열어보면 <<<<<<< HEAD 같은 표시가 있는데, 이걸 어떻게 처리해야 하는지 잘 모르겠습니다. VS Code에서 Accept Current Change, Accept Incoming Change 같은 버튼이 뜨는데 뭘 눌러야 하는 건가요? 실수로 다른 사람 코드를 날릴까봐 무섭습니다.

댓글 3

김김영삼2년 전

Git 충돌 해결, 처음엔 무섭지만 원리를 알면 간단합니다!


충돌 파일을 열면 이런 구조입니다:


<<<<<<< HEAD
// 현재 브랜치(내 코드)
const title = "My App";
=======
// 머지하려는 브랜치(상대 코드)
const title = "Our App";
>>>>>>> feature/login

해결 순서:



  1. <<<<<<<, =======, >>>>>>> 마커를 모두 제거합니다

  2. 두 코드 중 원하는 것을 선택하거나, 둘 다 합칩니다

  3. 저장 후 git add . → git commit


VS Code에서는:



  • Accept Current: 내 코드만 남김

  • Accept Incoming: 상대 코드만 남김

  • Accept Both: 둘 다 남김


확신이 없으면 팀원과 상의 후 처리하세요. 그리고 merge 전에 항상 별도 브랜치에서 작업하면 안전합니다!

깃깃초보(guest)김영삼2년 전
아 이렇게 간단한 거였군요! VS Code 버튼 의미를 이제 알겠습니다. 감사합니다!
코코딩하는민수2년 전

저도 같은 문제로 고민했었는데 도움 됐습니다. 참고로 GitLens 익스텐션 설치하면 충돌 해결이 더 편해요!

Ctrl+Enter로 등록