Проблема с инвертированным .gitignore

Я пытаюсь настроить файл .gitignore таким образом, чтобы он игнорировал все файлы во всех поддиректориях репозитория, кроме *.c, *.py и .pdf (также во всех поддиректориях). Но проблема в том, что если я составляю .gitignore моего репозитория таким образом:

/**/
!/**/*.pdf
!/**/*.с
!/**/*.py

То Git все равно игнорирует вообще все файлы, не обращая внимания ни на какие из них. В чем моя ошибка и как правильно составить .giignore для моей задачи?


Ответы (1 шт):

Автор решения: Timofei Bondarev

У меня получился такой файл. Подходит?

# Игнорируем всё
*
# Но позволяем рекурсивно заходить в папки
!*/
# а также следим за следующими файлами
!*.c
!*.py
!*.pdf
→ Ссылка