본문 바로가기

소프트웨어/Git

GitHub 에러 (Error)-refusing to merge unrelated histories

후배와 같이 진행하는 프로젝트가 있어서,

후배의 repository를 clone하여 내 저장소로 옮긴다음, push 하려고 하자 오류발생.

구글링을 통해 git pull을 진행하였으나,

 

아래와 같이

(Error)-refusing to merge unrelated histories

이런 오류가 뜸. (fatal)

 


여기서부터는 지식의 한계가 존재하여, ksw의 삽질연대기 님의 블로그 지식을 빌렸음.

이는 git pull origin <branchname> --allow-unrelated-histories 커맨드를 입력함으로서 해결이 가능하다.

 

git을 삭제했다가 다시 git init을 하고 git pull을 하면

같은 프로젝트임에도 불구하고 git의 입장에서는 전혀 새로운 프로젝트로 인식하게 된다.

따라서 하나의 저장소에서 각각의 브랜치에서 작업하다가 합치는 git merge의 관점이 아닌

전혀 다른 2개의 저장소에서의 작업을 합치는 관점에서 바라봐야 하고 최초로 pull을 해오는 경우 뒤에 --allow-unrelated-histories 라는 커맨드를 추가로 입력할 필요가 있는 것이다.

 


따라서 다시 git add와 commit을 수행하니,

아래와 같이 성공적으로 나의 repository에 push되었음을확인할 수 있다.

 

 

오늘의 ERROR 해결 완료!