개발하는 햄팡이

[Git] 중간에 있는 커밋 삭제하기 본문

카테고리 없음

[Git] 중간에 있는 커밋 삭제하기

hampangee 2025. 7. 28. 11:30

프로젝트를 하다가 팀원이 실수로 내 브랜치에 푸쉬를 했는데 그걸 나중에 pr을 올리고 알아버렸다...

그래서 내 커밋 중간에 상대방의 커밋이 있는 상태..

그래서 중간에 있는 커밋만 삭제를 해야하는 상황


git log 내역을 확인한 후 내가 삭제하고 싶은 커밋이 최신 커밋으로 부터 몇번째에 있는지 확인해야한다.

나는 10개 정도의 커밋 앞에 있었다.

$ git rebase -i HEAD~15

 

그래서 대충 15로 잡아주고 위의 명령어를 git Bash에 입력하면 편집기가 뜬다.

rebase 편집기

그러면 i를 눌러 INSERT 모드를 키고 

insert 모드 킴

원하는 커밋 라인을 지우고

esc를 눌러 INSERT모드를 꺼준다음

:wq 로 저장

 

 

성공 문구가 뜨고 커밋을 확인해 보면 사라져 있다.

그 다음 강제 푸쉬 or 원격 브랜치 삭제하고 푸쉬하면 됨.

git push origin 브랜치명 --force