Ответ 1
Если вы попробуете так, это не удастся, потому что вы в конечном итоге занесете в черный список каталоги в своей структуре.
Чтобы решить, вы хотите, чтобы в черный список было все, что не является каталогом, и не является одним из типов файлов, которые вы хотите зафиксировать, , а не черным списком каталогов.
Файл .gitignore
, который будет делать это:
# First, ignore everything
*
# Now, whitelist anything that a directory
!*/
# And all the file types you're interested in.
!*.one
!*.two
!*.etc
Протестировано это в трехуровневой структуре белого списка для .txt
файлов в присутствии файлов *.one
, *.two
и *.three
, используя .gitignore
, расположенный в корневой директории репозитория - работает для меня. Вам не нужно добавлять файлы .gitignore
ко всем каталогам в вашей структуре.
Информация, которую я использовал, чтобы выяснить, ответ пришел, среди прочего, this (stackoverflow.com).