.gitignore中的异常

我如何添加一个异常。gitignore,如“忽略所有的。dll文件 myfile.dll”?

75569 次浏览

使用!对模式求反:

*.dll
!myfile.dll

你也可以忽略文件夹,比如

!src/main/resources/archetype-resources/**/*

you can also ignore nested folder with patterns like

!**/src/test/resources/**/*

要快速创建.gitignore文件,请尝试gitignore.io

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

MyFolder/*
!MyFolder/CoolFile.txt

这个不会工作:

MyFolder/
!MyFolder/CoolFile.txt
你可以让几个.gitignore文件以分层的方式一起工作来实现你的目标。 在根级别,你可能有:

*.dll

在包含myfile.dll的文件夹中,你可以添加另一个.gitignore文件,如下所示:

根/ lib / folderwithMyFiledll

!myfile.dll

更多信息在这里

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

我这样做是因为我有一个名为/modules的文件夹,我想忽略它,除了/modules/custom文件夹中的所有内容。这对我很管用。现在我的自定义模块将同步到GitHub。

/modules/*
!/modules/custom/