그외

[Git] PR시 발생한 Conflict 해결하기

체봄 2021. 11. 15. 18:21

다른 브랜치에서 코드 수정 작업을 하고 push까지 마친 다음 main 브랜치로 PR을 보내려 했다. 그런데 "Can't automatically merge." 라는 에러 메시지가 떴다.

conflict가 발생하지 않았는데 PR이 안되는 경우는 처음이라 구글링을 통해 해결을 하였다.

 

1. $ git checkout main

2. $ git pull

3. $ git checkout 작업중인브랜치명

4. $ git merge main

순서대로 해주면 이제 Conflict가 발생하는 것을 확인할 수 있다.

Conflict가 발생한 파일을 vi 등으로 열어보면,  <<<<< HEAD, ======, >>>>> main 의 표시와 함께 코드가 추가된 것을 볼 수 있다.

코드는 보안 상의 이유로 가렸다. 두 부분을 비교해서 코드를 수정하고 <<<<< HEAD======>>>>> main 의 표시도 지워주도록 한다.

 

그리고 방금 수정한 코드를 다시 git add, git commit, git push를 한 다음 다시 PR을 보내려 하면 이번엔 "Able to merge."라는 메시지와 함께 문제 없이 PR을 보낼 수 있다!

반응형