.gitignore файл
Внимание .gitignore работает только с теми файлами, которые не содержатся в репозитории.
If a file is already being tracked by Git, adding the file to .gitignore won’t stop Git from tracking it. You’ll need to do git rm --cached <file> to keep the file in your tree and then ignore it.
Исключем из индекса
Если всетаки вы решили добавить в .gitignre фалы ранее закомиченные, их необходимо удалить из индекса или обновить индекс. Для этого можете воспользоваться командами
$ git update-index --assume-unchanged -- <file>
или
$ git rm --cached <file>
А для получения списка файлов можете воспольоваться
$ git status --porcelain
И в нем найти необходимый файл с помощью grep
Включаем в индекс
$ git update-index --no-assume-unchanged -- <file>
Особенности
.gitignore не влияет на git stash save, хотя влияет на git clean -df
Почему так, я и не понял.