How do I remove a directory subtree from the staging area?
I made a new repository, and ran git add -A
. I then noticed that there was a folder containing about 100 files that shouldn't have been included, so I added it to 开发者_Go百科.gitignore
.
How do I now clear the staging area so that I can add
all my files again taking into account the updated .gitignore
?
In #git, you said you unintentionally added a directory that should have been ignored, so run
git rm --cached -r directory-name
to recursively remove the tree rooted at directory-name
from the index.
Don't forget to update .gitignore
!
You can just use the command:
git reset
Make sure you remember to put the s
in --global core.excludesfile .gitignore.txt
excludesfile
vs excludefile
Maybe this will save someone else the hour I lost...
With a fairly modern git version you can now do:
git reset foldername/*
I found earliest documentation for this feature from version 2.12.5 onwards, but it might work on older version of git too.
精彩评论