Git

github에 push한 commit 삭제하는 법

yebeen 2022. 12. 2. 23:59

 

 

파일 정리를 잘못한 상태에서 push 한 바람에

그 전에 올려놓은 폴더와 이전에 해 온 커밋 내역까지 전부 사라져 버린 상황...

git은 정말 잘 모르고 사용하면 너무 어려운 것 같다...

그저 전처럼 돌아가고싶어 ㅜㅜ라는 생각에

나는 아무것도 모르고 학교 수업에서 배운 게 생각나서

[  $git reset --hard 되돌아가고 싶은 커밋 위치 ] 를 사용하였으나  

이건 버전을 돌린 상황으로 가는 것일뿐 상태는 내가 이미 push 한 상태에 머물러져 있어

파일끼리 충돌이 일어나 pull을 하고 push를 하라고 에러가 떠버렸다.

 

 

 

그저 왜 ! reset했는데 github에선 push한 commit이 안사라지고 자꾸 pull을 하라하는지 이해되지 않던 나...

 

 

 

그렇다... 이걸론 버전을 돌린 상태로는 돌아갈 수는 없었다.

이걸 2시간만에 깨달은 나는 내가 해버린 실수와 원하는 결과를 좀 더 구체화하여

구글링을 하였고 방법을 찾아냈다.

왠지 나는 git을 쓰다가 또 이런 일이 있을 것 같아 미리 정리해둘까 한다...🥹

 

 

 

 

github에 push된 commit 삭제하는 법


1. git log를 통해 삭제할 commit 찾기

2. git reset을 통해 commit 삭제하기

     - 최근의 commit을 삭제하고 싶을 땐 git reset HEAD^

     - 최근의 n개의 commi을 삭제하고싶을땐 git reset HEAD~n 

3. git push -f origin "branch name"을 통해 github에 commit 삭제를 알리기

 

 

이 3번째 단계를 해주면 github에서도 commit 삭제가 반영된다!!

 

 

 

 

 

 

 

참고사이트 🥹

https://0urtrees.tistory.com/44

'Git' 카테고리의 다른 글

github에 누락된 잔디 심기  (0) 2025.01.16