Git
[Git] ! [rejected] main -> main (fetch first) 에러 해결 방법
릴쥬
2022. 6. 25. 00:50
반응형
평소와 같이 코딩을 한 후에 로컬 저장소에서 원격 저장소로 git push를 했는데 에러가 발생하였다.
열심히 구글링 한 결과, 문제 원인과 해결 방법을 알아냈다.
! [rejected] main -> main (fetch first)
원인
로컬 저장소와 원격 저장소가 동기화되지 않아 발생하는 문제이다.
기존 데이터가 손실될 수 있기 때문에 push를 막은 것이다.
나의 경우 README.md 파일을 만들고 동기화하지 않아 문제가 발생하였다.
해결 방법
해결 방법에는 2가지가 있다.
1. 동기화 후 push 진행
git pull --rebase origin main #git pull --rebase [원격저장소별칭][브랜치]
git push
2. 강제로 push 진행
git push origin +main
2번의 경우 pull을 하지 않은 변경 사항은 삭제되기 때문에 주의해야 한다.
나는 1번으로 입력하여 동기화를 하고 push를 하였다. pull을 함으로써 README.md 파일이 원격 저장소에 나타났고 커밋 내역은 변경되지 않은 채 기존에 push한 내역 그대로 업로드되었다!
반응형