git log
삭제하고 싶은 커밋 이전 커밋 해시 키값을 복사한다.
예를 들어, 3 commit
을 삭제하고 싶거나 3 commit
~ 4 commit
을 삭제하고 싶다면
2 commit
해시 키값을 복사한다.
rebase -i 옵션과 함께 복사한 키값을 뒤에 입력한다.
git rebase -i 49ae0dd3960d31de41656744e0c3da6153a446e6
여기서 rebase를 중지하고 싶다면 git rebase --abort
명령어로 원래 상태로 되돌아간다.
삭제하고 싶은 커밋을 drop
으로 변경 start rebase
버튼을 클릭한다.
git status
로 파일을 확인한 후 파일을 수정한다.git add .
후 리베이스를 계속 진행한다.git rebase --continue
git log
로 확인해 보면 아래와 같이 커밋이 삭제된 것을 확인할 수 있다.스크린샷 해시 키값을 확인해 보면 리베이스가 시작된! 커밋이 삭제된 부분부터는 해시 키값이 변경된 것 을 알 수 있다.
즉, 새로운 커밋이 되었기 때문에 서버에 push가 된 history에 push를 하려면 아래 명령어로 서버에 업로드할 수 있다.
git push origin main --force
그렇기 때문에 혼자 또는 서버에 아직 업로드되기 전에 사용하고, 개발자와 협업하고 있는 상황에서는 서버에 업로드된 history에는 사용하면 안 된다.