Игнорировать файл при коммите

Что делать если файл часто обновляется однако изменения файла не влияют на проект и этот файл нужен в центральном репозитории?

Решение

В git существует 2 варианта игнорирования файлов и директорий:

Собственно с Global вариантом все предельно ясно, давайте разберемся с Local.

Интересующий нас файл находится по адресу <project>/.git/info/exclude. Этот файл имеет аналогичную структуру с .gitignore так что добавить файлы для игнора будет не сложно.

Однако есть ньюанс, добавление имен файлов в файлы <project>/.git/info/exclude и .gitignore будут иметь силу только на новые файлы, которые еще небыли добавлены в предыдущих коммитах.

Для того чтобы уже существующие файлы добавить в игнор нужно дополнительно выполнить команду:

git update-index --assume-unchanged <file>

Эта команда пометит файл как unchanged и тогда будут работать файлы игнора как следует.

Так же есть обратная команда:

git update-index --no-assume-unchanged <file>