35

有没有办法在.gitignore文件中使用扩展正则表达式(ERE)?例如,我想+在文件中使用重复字符.gitignore。有没有办法做到这一点?

4

2 回答 2

33

here所示并在“ this question ”中详细说明,函数fnmatch()用于解释 glob 模式,这意味着不支持正则表达式。

这是gitignore手册页提到的:

否则,git treats the pattern as a shell glob suitable for consumption by fnmatch(3)带有FNM_PATHNAME标志:模式中的通配符将不匹配/路径名中的 a。
例如,“ Documentation/*.html”匹配“ Documentation/git.html”,但不匹配“ Documentation/ppc/ppc.html”或“ tools/perf/Documentation/perf.html”。

您可以在这些 问题中看到 glob 模式和正则表达式之间的一些对应关系。

于 2013-03-28T07:28:17.193 回答
13

.gitignore和其他)文件使用文件名 glob,而不是正则表达式。

我非常怀疑你能否说服 git 黑客改变这一点:现在太根深蒂固了,glob 作为文件名匹配器更加熟悉。

于 2013-03-28T02:20:53.820 回答