본문 바로가기

~2023

[Git] rebase로 커밋 기록 삭제하기

728x90
반응형

프로젝트를 진행하다가 이상한 걸 remote에 푸쉬해버리는 바람에 커밋 기록 삭제하는 방법을 찾아 다녔다

reset과 revert로도 할 수 있다는데,,,

reset은 잘못하다가 커밋을 전부 날려 버릴 것 같아 사용하지 않았고

revert는 과정이 어려웠다.

그래서 위험하지만 성능 확실한 rebase로 커밋 기록을 삭제했다.


내가 한 방식은 rebase로 커밋 목록 보고 삭제하고 싶은 해당 커밋을 drop해준 다음에

remote에 푸쉬해주면 쉽게 커밋을 없애버릴 수 있었다.

$ git rebase -i HEAD~?

?는 최근 커밋부터 ?에 넣을 숫자만큼 커밋 기록을 보여준다.

그래서 삭제할 커밋 메세지 or 커밋 해쉬 코드(git log를 통해 볼 수 있음)를 찾아

pick -> drop으로 변경해주고

remote에 강제로 보내버리면 끝.

$ git push -f 별명 브랜치

 

 

 

 

 

728x90
반응형