Question

How can I undo every change made to my directory after the last commit, including deleting added files, resetting modified files, and adding back deleted files?

Was it helpful?

Solution

First reset the changes

git reset HEAD --hard

then clean out everything untracked. If you want to keep files that are not tracked due to .gitignore, be careful with this command.

git clean -fd

OTHER TIPS

How can I undo every change made to my directory after the last commit, including deleting added files, resetting modified files, and adding back deleted files?

  1. You can undo changes to tracked files with:

    git reset HEAD --hard
    
  2. You can remove untracked files with:

    git clean -f
    
  3. You can remove untracked files and directories with:

    git clean -fd
    

    but you can't undo change to untracked files.

  4. You can remove ignored and untracked files and directories

    git clean -fdx
    

    but you can't undo change to ignored files.

You can also set clean.requireForce to false:

git config --global --add clean.requireForce false

to avoid using -f (--force) when you use git clean.

There are two commands which will work in this situation,

root>git reset --hard HEAD~1

root>git push -f

For more git commands refer this page

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top