常规的忽略就不说了,要说的是设置不忽略。
设置一个根目录下的文件不忽略可以这样,没有问题:
/*
!a.java
如果不是在根目录下,比如 /a/b.java,设置这样一个文件不被忽略,却是没有用:
/*
!/a/b.
看了官方的文档,有这样的一个demo:git-doc : gitignore
# exclude everything except directory foo/bar
/*
!/foo
/foo/*
!/foo/bar
那不忽略 /a/b.java 应该这样写:
/*
!/a
/a/*
!/a/b.java
那之前错误的原因应该是 !/a/b.java
其目录被忽略了?
这么写是相当麻烦的,比如一个三级目录,我只不忽略一个文件/fileTemplates/includes/File Header.java
,就要这么写
/*
!/fileTemplates
/fileTemplates/*
!/fileTemplates/includes
/fileTemplates/includes/*
!/fileTemplates/includes/File Header.java
为什么有这种需求,是为了同步 Intellij IDEA 的配置文件。。。