Skip to content

Instantly share code, notes, and snippets.

@tennisonchan
Last active July 25, 2016 02:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tennisonchan/dce447b8aaf2db287cad to your computer and use it in GitHub Desktop.
Save tennisonchan/dce447b8aaf2db287cad to your computer and use it in GitHub Desktop.
#undo the #git commit amend #sh
# Move the current head so that it's pointing at the old commit
# Leave the index intact for redoing the commit.
# HEAD@{1} gives you "the commit that HEAD pointed at before
# it was moved to where it currently points at". Note that this is
# different from HEAD~1, which gives you "the commit that is the
# parent node of the commit that HEAD is currently pointing to."
git reset --soft HEAD@{1}
# commit the current tree using the commit details of the previous
# HEAD commit. (Note that HEAD@{1} is pointing somewhere different from the
# previous command. It's now pointing at the erroneously amended commit.)
git commit -C HEAD@{1}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment