Подтвердить что ты не робот

Расширенные регулярные выражения (ERE) для .gitignore

Есть ли способ использовать расширенные регулярные выражения (ERE) в файле .gitignore? Например, я хочу использовать символ повторения + в файле .gitignore. Есть ли способ сделать это?

4b9b3361

Ответ 1

Как проиллюстрировано здесь и подробно описано в разделе этот вопрос ", функция fnmatch() используется для интерпретации шаблонов glob, что означает, что регулярные выражения не поддерживаются.

Вот что gitignore man page:

В противном случае git treats the pattern as a shell glob suitable for consumption by fnmatch(3) с флагом FNM_PATHNAME: подстановочные знаки в шаблоне не будут соответствовать / в пути.
Например, "Documentation/*.html" соответствует "Documentation/git.html", но не "Documentation/ppc/ppc.html" или "tools/perf/Documentation/perf.html".

Вы можете увидеть соответствие между шаблонами глобалов и регулярными выражениями в тех questions.

Ответ 2

В файлах .gitignore (и других) используются имена файлов globs, а не регулярные выражения.

Я очень сомневаюсь, что вы можете убедить злоумышленников git изменить это: слишком укоренилось к настоящему времени, а globs гораздо более знакомы с именами сокетов.