How to undo the last commit in git [duplicate]

2019-03-07 20:12发布

问题:

This question already has an answer here:

  • How do I undo the most recent commits in Git? 77 answers

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.

回答1:

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).



回答2:

Try simply to reset last commit

git reset --soft HEAD~1