Extended regular expressions (ERE) for .gitignore

git, gitignore, metacharacters, regex

Solution

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.

Problem

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?

Original source

Related problems