본문 바로가기

개발 관련/git

github 레포지토리로 git push 시 오류 - Updates were rejected because the remote contains...

git push 하는 도중에 다음과 같은 오류가 났다.

hint: Updates were rejected because the remote contains work that you do not have locally.

검색 결과, 이와 같은 현상은 github에서 레파지토리를 생성할 때, README.md 파일을 생성했기 때문.

 

 

1. 첫번째 해결방법 / git pull 

해결 방법은 git pull 명령어로 원격 레파지토리를 내 로컬로 fetch한 다음 merge 하면 된다고 한다.

git pull origin master

 

하지만 두번째 오류가 나버렸다.


2. 두번째 해결방법 / --allow-unrelated-histories

 

fatal: refusing to merge unrelated histories

에러 내용은 보는 그대로, commit 히스토리가 서로 연관성이 없어 merge가 거절된 것이다.

git pull origin master(or branch name) --allow-unrelated-histories

해당하는 브랜치명을 넣어 주고 git status 로 문제 해결이 해결된 것을 확인 후에,

git status
git add .
git push -u origin master

원래대로 명령어를 쳐주니 정상적으로 커밋이 되었다.