[Git Error] non-fast-forward, src refspec force does not match any

G E Lee·2022년 10월 25일
0

error

목록 보기
2/4
post-thumbnail

git push, pull 문제 발생

원인 : 로컬저장소와 원격저장소의 공통 분모가 없을 경우에 발생

문제 발생 전 작업 사항

1. 기존에 있던 branch들을 삭제
2. 로컬저장소로 master branch를 npx create-react-app 생성
3. master branch 를 main으로 변경
4. 원격저장소에 해당 main 내용으로 push, pull, fetch, public ... 모든 동작 불가능

main branch에 push 하려고 했더니 리젝트되어 non-fast-forward error가 발생하였다.

해결

해결방법 1. 강제로 커밋 덮어씌우기 (실패)

git push {branch name} -- force

기존 커밋한 기록이 있어 충돌때문에 작업이 불가능한 것인가 하여 git 커밋을 강제로 최근것으로 덮어씌우려고 했으나 실패.

해결방법 2. 원격저장소에 올라가있는 프로젝트를 병합해주기 (성공)

해당 방법은 main 권한이 있는 개인 프로젝트라 가능했다.

git pull origin main --allow-unrelated-histories

다른 프로젝트이고 history tree가 다르지만 원격 저장소를 같은 곳을 바라보고 있을때 가능한 커멘드이다.

하단 사진의 노란색 부분이 합쳐져서 같은 history를 바라보는 것을 알 수 있다.

참고한 방법 : https://velog.io/@rain98/깃허브-non-fast-forward-에러-해결하기

profile
배움은 끝이 없다

0개의 댓글