문제

Is there a way to use extended regular expressions(ERE) in a .gitignore file? For example I want to use the + repetition character in a .gitignore file. Is there a way to do that?

도움이 되었습니까?

해결책

As illustrated here and detailed in "this question", the function fnmatch() is involved to interpret glob patterns, which means regular expressions are not supported.

This is what gitignore man page mentions:

Otherwise, git treats the pattern as a shell glob suitable for consumption by fnmatch(3) with the FNM_PATHNAME flag: wildcards in the pattern will not match a / in the pathname.
For example, "Documentation/*.html" matches "Documentation/git.html" but not "Documentation/ppc/ppc.html" or "tools/perf/Documentation/perf.html".

You can see some correspondence between glob patterns and regular expressions in those questions.

다른 팁

The .gitignore (and other) files use filename globs, not regular expressions.

I very much doubt you can convince the git hackers to change that: Just too ingrained by now, and globs are much more familiar as filename matchers.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top