git
[Github] 깃헙 협업시 refusing to merge unrelated histories
AlgoRoot
2022. 5. 23. 21:40
반응형
프론트엔드 팀원 분과 지난 3주간에 걸쳐 협업을 잘 해왔는데 프로젝트가 완성이 되어 가면서 dev에 있는 프로젝트를 main에 merge시키려는 과정에서 아래와 같은 문구가 떴다.
우선 로컬 main에 dev를 merge시키려는 과정에서 발생한 오류인데 왜 연관이 없다고 하는지 몰라 구글링을 했다.
찾아보니 원인은 두 가지라고 한다.
1. 서로 관련 기록이 없는 이질적인 두 프로젝트를 병합할 경우
2. 로컬 저장소와 원격지의 저장소의 기록(History)을 비교했을 때 소스코드의 차이가 심한 저장소의 경우
내 경우는 1번에 해당했던 것 같다. 더 찾아보니 로컬에 있던 프로젝트와 깃 저장소에 있던 프로젝트를 깃에서는 서로 다른 프로젝트라고 인식하고 있어서 생길 수 도 있다고 한다.
로컬 main브랜치에서 원격 main을 pull 받았으니 이게 깃 저장소에 있던 프로젝트가 되고, 이 상태에서 merge 시키려 하는 dev는 원격 프로젝트이니 충돌이 생긴 것 같다.
아무튼간에 이런 경우에는 소스 트리보다는 아래의 터미널 명령으로 해결하는 게 빠르다.
main branch에서
git merge dev --allow-unrelated-histories
말 그대로 서로 관련 없는 history들을 허용한다는 뜻이다.
이후에 잘 merge 된 main branch를 원격 main에 push 하면 된다.
반응형