.gitignore中的例外

如何给.gitignore添加一个exception,比如“忽略所有的.dll文件但是 myfile.dll”?

使用! 否定模式:

 *.dll !myfile.dll 

如果你想忽略整个文件夹,除了一些特定的文件,然后写:

 MyFolder/* !MyFolder/CoolFile.txt 

不会工作:

 MyFolder/ !MyFolder/CoolFile.txt 

你也可以忽略类似的文件夹

  !的src /主/资源/原型资源/ ** / * 

你也可以忽略模式的嵌套文件夹

  !** / src目录/testing/资源/ ** / * 

你可以有多个.gitignore文件以分层方式一起工作来实现你的目标。 在根本上你可能有:

 *.dll 

在具有myfile.dll的文件夹内,可以添加另一个.gitignore文件,如下所示:

根/ LIB / folderwithMyFiledll

 !myfile.dll 

更多信息在这里

一个可选的前缀“!” 否定了这种模式; 任何先前模式排除的匹配文件将再次包含在内。 在第一个“!”前加一个反斜杠(“\”) 对于以“!”开头的模式,例如“!important!.txt”。 如果在满足某些条件的情况下排除该文件的父目录,则可以重新包含文件。 细节请参见注释部分。