Git Push 취소하기

Yooa·2023년 1월 17일
0

미숙한 삽질

목록 보기
1/5
post-thumbnail

계속되는 개발로 눈이 침침해진 나는 올리지 말아야 할 파일을 커밋해 푸쉬해버렸다. 두근대는 심장을 가라앉히고 git push를 취소해보자.

git에 push된 commit을 복구시킬 수 있는 방법은 두가지가 있다.

reset: 되돌리고 싶은 시점의 commit이력으로 돌아가는 것(시간여행)

revert: 현재까지 남긴 이력들을 유지한 채 되돌리고 싶은 commit을 원상복귀시키는 것(복구commit이 추가됨)

필자는 혼자 작업하던 레포지토리였기 때문에 reset을 사용했다. 여럿이서 작업하는 공간에는 revert를 사용하자.

commit log 조회

git log --oneline

HEAD 가 있는 커밋이 현재 브랜치를 가리키는 포인터이자 가장 최근의 커밋을 가리킨다.

reset

복구시키고 싶은 커밋의 id를 복사해놓고 git reset을 실행하자.

git reset --hard "commit ID"

--hard 옵션을 사용하면 복구시키려는 커밋 이후의 모든 내용은 지워버린다.

다시 커밋 로그를 조회하면 해당 커밋 위의 커밋들은 사라져있다.

github 수습하기

git push -f origin <branch>

깃허브 커밋 이력을 확인하면 깔끔하게 지워졌다.
-f 옵션은 함부로 사용하면 안된다. 커밋과 푸시는 항상 신중하게 하도록 하자.


참고
https://ninano1109.tistory.com/3

profile
기록이 주는 즐거움

0개의 댓글