Как удалить поддерево каталога из промежуточной области? - PullRequest
58 голосов
/ 19 марта 2011

Я сделал новый репозиторий и запустил git add -A. Затем я заметил, что там была папка, содержащая около 100 файлов, которые не должны были быть включены, поэтому я добавил ее в .gitignore.

Как теперь очистить область подготовки, чтобы я мог add все мои файлы снова с учетом обновленного .gitignore?

Ответы [ 3 ]

115 голосов
/ 19 марта 2011

В #git вы сказали, что непреднамеренно добавили каталог, который должен был игнорироваться, поэтому запустите

git rm --cached -r directory-name

для рекурсивного удаления дерева с корнем в directory-name из индекса.

Не забудьте обновить .gitignore!

26 голосов
/ 19 марта 2011

Вы можете просто использовать команду:

git reset
4 голосов
/ 14 мая 2012

Убедитесь, что вы не забыли поставить s в --global core.excludesfile .gitignore.txt

excludesfile против excludefile

Возможно, это спасет кого-то еще в час, который я потерял ...

...