Интересное требование.Мне любопытно, что на самом деле ваш вариант использования.
То, как вы должны сделать что-то подобное, - это отдельный .gitignore
в родительском каталоге каждого поддерева, которое вы должны исключить(git читает все файлы .gitignore
по пути вниз по дереву).
Если вы действительно хотите один .gitignore
файл ... Ну, я не пробовал это, но если говорить о gitignore doc , это в основном типичный глобус оболочки, так что работа может выглядит примерно так:
a/*/d/e/f/g
a/*/*/d/e/f/g
a/*/*/*/d/e/f/g
... повторяется спостоянно увеличивающееся число звездочек, до которых вы ожидаете, что это будет разумно идти.
Я предполагаю, что здесь будет снижение производительности, но я не знаю, насколько это серьезно.Вероятно, незаметно для большинства репо в любой системе, созданной за последние 5-10 лет.