[GitHub] Resolve conflicts 버튼 비활성화

네모난네모·2024년 11월 7일
0
post-thumbnail

팀원들의 작업물을 메인 브랜치로 합치는 과정에서 Resolve conflicts 버튼이 비활성화되어 팀원 모두 당황한 적이 있다.

일반적으로 PR에서 conflict가 발생하면 Resolve conflicts를 통해 코드를 직접 수정하면 되는줄 알았는데, 아예 비활성화 되다니..

This branch has conflicts that must be resolved
Use the command line to resolve conflicts before continuing.
Conflicting files
README.md

Use the command line을 클릭하면 뭔가 적혀있는데
결국은 main 브랜치를 pull부터 다시 받아서 시작하라고 적혀있었다.

A-page-브랜치에서 여러 사람의 작업물을 수합하고, 그 수합본을 다시 main 브랜치에 merge하는 과정에서 편의를 위해 A-page-브랜치 안의 다른 페이지(B, C) 폴더를 삭제하면서 README.md 파일도 같이 삭제하신 것 같았다.

다른 폴더 삭제는 되면서 왜 README.md 파일만 오류가 발생한건지 알 수 없었지만 일단 해결이 먼저였다.

다행히도 어떻게 하면 될지 감이 왔다.

마침 그 전날에 작업 중이던 브랜치(origin/MY)에서 main 브랜치로 merge하기 위해 PR을 생성한 이후, 로컬 브랜치(MY)의 추가 commit을 원격 브랜치(origin/MY)로 push했더니 앞에서 생성한 PR에 해당 commit이 추가된 것을 발견한 적이 있었다.

그때는 PR을 생성했으면 미루지 말고 빨리 빨리 merge 해야겠다고 생각하고 말았었는데..

상황이 이렇게 되니 저렇게 해결하면 되겠다 싶었다.
팀원분께 ①main 브랜치를 로컬 브랜치로 pull 받고, ②README.md 파일이 추가된 로컬 브랜치의 commit을 원격 브랜치로 push해달라고 요청을 했다.

PR에 커밋과 함께 README.md 파일이 추가되더니 Resolve conflicts 버튼이 활성화되었다!!!!!

그러나..

이 내용에 대해 피드백을 받았는데, 기본적인 conflict 해결은 로컬에서 코드로 진행하는 것이 더 바람직한 것이라고 한다.
저런 방식을 해결 방법이라고 말하면 충돌 해결을 많이 안해본 것처럼 보인다고 하셔서 가급적 PR의 resolve conflicts에 의존하지 않고 코드로 충돌을 해결하는 습관을 들여야겠다는 생각이 들었다.

0개의 댓글