본문 바로가기
개발도구/Git

강제 (force) push 수행하기

by 횰쓰 2022. 7. 3.

git push force 란?

 

 

위와 같이 가끔씩 사용자의 로컬저장소의 변경사항들이 원격저장소의 변경사항들과 호환되지 않는 경우 사용자의 변경사항을 push 하는 유일한 방법은 git push force 를 이용하는 것이다.

 

 

git push force를 수행한다면 위와 같이 로컬 저장소와 원격 저장소의 Commit 내역을 일치시킬 수 있다. 

 

즉, 원격 저장소 기준이 아니라 로컬 저장소의 기준으로 원격 저장소에 commit내역을 push 하는 것이다. 한마디로 원격 저장소의 commit 내역을 로컬을 기준으로 덮어쓰기(overwrite) 하는 것이다. 

 

$ git push -f

//또는
$ git pus --force

 

 


 

 

※ 주의 :

이 명령어의 사용으로 인해 원격 저장소에 커밋들이 유실되는 현상이 발생할 수 있다.

 

더욱이, 해당 원격 저장소가 다른 사용자들과 공유되는 상황이라면 force push 를 수행하는 것은 더더욱 지양하여야 하는데, 이는 다른 사용자들의 git history 상에는 덮어쓰기가 수행된 커밋 정보가 포함되어 있을 수 있기에, 각 사용자들의 작업이 원격 저장소 내용과의 동기화가 끊어지게 만드는 결과가 초래되기 때문이다.

 

댓글