I’ve accidentally staged extra files in my Git repository. How do I undo a
git add before running
To unstage files, use
git reset. Without arguments, this will unstage all changes to all files. To unstage a specific file, provide its name as an argument (e.g.
git reset exclude.md).
For example, let’s say we’ve staged changes for a couple of
.md files in our repository, and we want to exclude one of them. First, we run
git status, and get the following output:
On branch dev No commits yet Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: exclude.md new file: include.md
Then we run
git reset exclude.md to unstage
git status output will now look like this:
On branch dev No commits yet Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: include.md Untracked files: (use "git add <file>..." to include in what will be committed) exclude.md
exclude.md has been unstaged and will no longer be in our next commit.
As per the instructions in the
git status output, we could also have used
git rm --cached exclude.md to unstage the file.