如何指定git只忽略匹配模式而不是目录的文件?

时间:2018-09-05 19:53:47

标签: git directory gitignore

我今天遇到了一个场景,其中一个命名冲突是我们希望忽略的文件以及我们的一个项目中的子目录。在git上建立的新项目中,有一个名为src/core/app的目录。我们的默认gitignore排除任何名为core的文件,因为如果存在核心转储,则会输出该文件。 .gitignore文件包含类似这样的行:

#debug files
core

我们通过执行git add -f解决了这个问题,但是我很好奇是否有可用的gitignore语法指定我们只想忽略名为core的文件,而不包括任何可能命名为{ {1}}?

1 个答案:

答案 0 :(得分:3)

是的,实际上可以使用负模式和斜杠(与目录匹配)来实现。将这两行放在您的.gitignore中:

core
!core/

这将忽略名为core的文件,但不会忽略名为core的目录。