.gitignore的扩展正则表达式(ERE)

Jac*_*ieg 34 regex git gitignore metacharacters

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

Von*_*onC 31

如图所示这里和详细的" 这个问题 ",该功能的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模式和正则表达式之间的一些对应关系.


von*_*and 11

.gitignore(等)文件使用的文件名描述,而不是正则表达式.

我非常怀疑你能说服git黑客改变这一点:现在根深蒂固,并且随着文件名匹配,globs更为熟悉.

  • 这真遗憾.这样一个方便的功能可能是. (13认同)
  • @ArturBarseghyan,考虑Mercurial,它具有整洁的功能和许多其他很酷的功能. (3认同)
  • 有人试过提交补丁吗?谁知道,也许git黑客也会觉得这很有用. (2认同)