git: remove 2nd commit

Posted by cwolves on Stack Overflow See other posts from Stack Overflow or by cwolves
Published on 2012-03-22T21:12:01Z Indexed on 2012/03/22 23:30 UTC
Read the original article Hit count: 230

Filed under:

I'm trying to remove the 2nd commit to a repo. At this point I could just blow away the .git dir and re-do it, but I'm curious how to do this... I've deleted commits before, but apparently never the 2nd one :)

> git log

commit c39019e4b08497406c53ceb532f99801793205ca
Author: Me
Date:   Thu Mar 22 14:02:41 2012 -0700

    Initializing registry directories

commit 535dce28f1c68e8af9d22bc653aca426fb7825d8
Author: Me
Date:   Tue Jan 31 21:04:13 2012 -0800

    First Commit

> git rebase -i HEAD~2
fatal: Needed a single revision
invalid upstream HEAD~2

> git rebase -i HEAD~1

at which point I get in my editor:

pick c39019e Initializing registry directories

# Rebase 535dce2..c39019e onto 535dce2
#
# Commands:
#  p, pick = use commit
#  r, reword = use commit, but edit the commit message
#  e, edit = use commit, but stop for amending
#  s, squash = use commit, but meld into previous commit
#  f, fixup = like "squash", but discard this commit's log message
#  x, exec = run command (the rest of the line) using shell
#
# If you remove a line here THAT COMMIT WILL BE LOST.
# However, if you remove everything, the rebase will be aborted.
#

Now my problem is that I can't just blow away this 2nd commit since "if you remove everything, the rebase will be aborted"

© Stack Overflow or respective owner

Related posts about git