.gitignore Отрицание игнорирование (исключения) файла, поддиректории, не исключать. Пример не исключения при исключении роделя

Чтобы исключить из игнорирования файл или папку, достаточно просто добавить в файл .gitignore в начале строки с путём восклицательный знак, например:

Всё содержимое папки, кроме поддиректории

#исключим всё содержимое папки application/language
application/language/*
#кроме подиректории:
!application/language/gr/

Все содержимое папки, кроме файла в ней

Можно также не ставить под контроль версий все содержимое директории, кроме конкретного файла (например, пусть его имя ".gitkeep"):

#исключим всё содержимое папки application/language
application/language/*
#кроме конкретного файла:
!application/language/.gitkeep

-- такой подход, помимо сохранения реального файла, используют для сохранения в репозитории пустой директории.

Именование папки и файлов аналогично обычному исключению.

Невозможность включить элемент после исключения его родительской директории

Проблема и её решение с примером описаны здесь

Key Words for FKN + antitotal forum (CS VSU):