How to undo the last commit in git

chintan s picture chintan s · May 24, 2016 · Viewed 225.1k times · Source

By mistake, I did git add . and git commit in the develop branch. But luckily, I did not do git push.

So I wanted to revert it back to original state.

I tried git reset --soft and git reset HEAD --hard but looks like I have messed it up.

How do I fix this? I want to go back to original state and possibly keep the code changes.

Answer

guessimtoolate picture guessimtoolate · May 24, 2016

I think you haven't messed up yet. Try:

git reset HEAD^

This will bring the dir to state before you've made the commit, HEAD^ means the parent of the current commit (the one you don't want anymore), while keeping changes from it (unstaged).