2차 프로젝트-Git Push 에러 해결하기(error: failed to push some refs to~)

2023. 12. 15. 13:53Devlog

오늘 2차 프로젝트를 진행하는 도중 내가 완료한 login관련 기능을
dev브랜치에 머지한 뒤, gitlab에 push를 해야 했다.

근데, 예기치 못한 오류가 발생해서 이 부분은 꼭 정리해야겠다 생각이 들었다.

여태까지 git에 여러 가지 오류를 접했지만,  처음 보는 오류였다.

 

 

$git push origin dev
to https://kdt-elice.io/team01.git
! [rejected]             main -> main (fetch first)
error:failed to push some refs to 'https://kdt-elice.io/team01.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. this is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in ' git push --help'for details.

 

 

이런 오류가 뜨면서 push가 되지 않았다.

 

대충 이해해 보면, gitlab 원격저장소와 로컬에 있는 내용이 다르다는 뜻 같았다.

찾아보니까

Gitlab에 내 localstorage에 없는 파일이 있고, 내 파일을 push 하면 gitlab 자체에서 막는 오류 라고한다.

그래서 실시간으로 update해준 뒤, push 하면 된다.

여기서 update는 최신버전을 pull 하는 것이다.

(이 문제가 왜 발생했냐면, 코치님께서 커밋하고 수정해 주신 코드가

내 로컬 브랜치에 최신화가 안 돼있어서,

원격과 로컬의 불일치로 발생한 것이다.

 

 

여기서 제일 위험했던 행동이 있다!!

바로 -f나 -u 옵션을 사용하는 것이다.

 

이 옵션을 사용하면 강제로 push를 진행할 수 있는데,

하마터면 사용할뻔했다. 너무 해결이 안돼서..

하지만 팀 프로젝트에서 이런 행동은 절대 하면 안 된다고 생각해서,
오류해결방법을 더 찾았는데 다행히도 찾았다!

$ git push -f origin


이런 식으로 입력하면 강제로 push 할 수 있지만,
내 마음대로 쓰면 안 된다는 것을 명심해야겠다!

 

 

 

 

 

 

 

 

 

 

 

프론트엔드 부트캠프, 엘리스 SW 엔지니어 트랙

현업 개발자들이 추천하는 부트캠프, 프론트엔드, 백엔드, 웹 프로그래밍, 인공지능(AI), 데이터분석, 사물인터넷(IoT)까지! 개발자 성장 플랫폼 엘리스트랙에서 시작하세요.

elice.training

 

 

프론트엔드 부트캠프, 엘리스 SW 엔지니어 트랙

현업 개발자들이 추천하는 부트캠프, 프론트엔드, 백엔드, 웹 프로그래밍, 인공지능(AI), 데이터분석, 사물인터넷(IoT)까지! 개발자 성장 플랫폼 엘리스트랙에서 시작하세요.

elice.training

 

 #엘리스트랙 #엘리스트랙후기 #리액트네이티브강좌 #온라인코딩부트캠프 #온라인코딩학원 #프론트엔드학원 #개발자국비지원 #개발자부트캠프 #국비지원부트캠프 #프론트엔드국비지원 #React #Styledcomponent #React Router Dom #Redux #Typescript #Javascript

반응형