Работа с .git/info/исключить слишком поздно

Я обычно делаю это:

git init
git add .
git commit .

И затем я понимаю, что он собирается добавить мой каталог nbproject, который я хочу исключить/проигнорировать. Иногда я даже проверяю этот каталог. Если бы я добавил его в .git/info/exclude перед запуском git add., Все работает отлично (оно исключено).

Итак, я изменяю .git/info/exclude, а потом слишком поздно. git больше не относится к изменениям в .git/info/exclude.

Итак, вопросы:

  • Как я могу получить git для внесения изменений в файл exclude в checkin? (я попробовал запустить git add. снова, что не помогает)
  • Скажем, я проверяю каталог (или файл), который я хочу исключить. Какое минимальное количество шагов для получения состояния, которое я хочу (при исключении файла).

Ответ 1

Чтобы удалить файл, который вы добавили, но не зафиксировали, используйте следующую команду:

git rm --cached file.to.remove

Это приведет к удалению файла из индекса, но не касается файла на диске.

Чтобы удалить файл (или файлы) из последнего фиксации, используйте приведенную выше команду git rm --cached, за которой следует git commit --amend.