Reverting all local changes in a Git-managed project is a common need when you want to discard your modifications and go back to a clean state. Depending on whether your changes are staged, unstaged, or untracked, Git provides different commands to handle each case.
Ways to Revert Local Changes:
Discard unstaged changes (modified files)
If you’ve edited files but haven’t staged them yet, you can use:
git checkout --
Or to discard all files at once:
git checkout -- .
Unstage files but keep changes
If you accidentally staged files (git add), but want to unstage without losing edits:
git reset
Remove all local changes (reset to last commit)
To completely discard both staged and unstaged changes and go back to the last committed state:
git reset --hard
Delete untracked files/folders
If you created new files not tracked by Git, use:
git clean -fd
Key Points:
- git reset --hard is the fastest way to revert your working directory to the latest commit.
- Be careful—this permanently removes changes that are not committed.
- Always double-check with git status before running cleanup commands.
In short, you can revert all local changes by combining git reset --hard and git clean -fd. This restores your project to a clean state, just like the last committed version.