.gitignore не игнорирует - не работает - не применяется - как исправить. Решение

Что происходит

Файл .gitignore может не работать в случае, если клонированный вами репозиторий уже содержал правила для файлов и папок которые вы пытаетесь исключить (то есть они не были в .gitignore и не игнорировались - а вы резко захотели их игнорировать) - в этом случае внесение их в файл игнорирования само по не поможет - их нужно удалить из "контроля"

Что делать

-прейдите в папку с кодом (ваш локальный репозиторий) :

cd  C:/www/repo/

и удалите файл из контроля (например .htaccess):

git rm --cached .htaccess

получим ответ:

rm '.htaccess'

Аналогично можно заставить игнорировать и сам .gitignore (если раньше не игнорировался):

git rm --cached .gitignore

Потом делаем Commit и ярлыки (если они есть - например в винде с использованием tortoisegit) покажут нам что удалённые из кэша файлы теперь игнорируются.

На основании документации по git:

.gitignore

If you create a file in your repository named .gitignore git will use its rules when looking at
files to commit. Note that git will not ignore a file that was already tracked before a rule was added to this file to ignore it. In such a case the file must be un-tracked, usually with
git rm --cached filename

Спасибо товарищу Убежденному (Убеждённый), который высказался по данному поводу здесь: cyberforum.ru/version-control/thread978261.html