在正常的工作中,经常使用到git,那自然.gitignore文件的使用是必须要掌握的。所幸我们一般用到的的.gitignore的规则都比较简单,而且其语法是使用的通配符语法,容易掌握,这里将它的语法进行一下归纳整理,便于之后查阅。
这里的内容主要参考的是git的官方文档
- 空行被程序无视,所以可以用来组织文件使之便于阅读。
- #开头的行被视作注释。
- 每一行之后的空格被忽略,除非使用\将其包裹。
- !前缀表示反向选择,即之前被排除的文件或文件夹,如果符合- !之后的模式,将会被重新包括在内,但是:- 如果!希望重新包含的文件或文件夹,其父文件夹被排除,则无法重新包括在内。
- 如果想要匹配的是字符!,则需要前面使用反斜杠转义\!。
 
- 如果
- 正斜杠/被看做是目录分隔符。
- 如果存在/(在开头或中间),则被排除的文件或目录将只是这个相对路径下的;如果不存在/,则该模式表示的文件或目录(AAA/)不管存在于哪一级目录中,都将被排除。- 例:doc/frotz/只会排除doc/frotz/而不能排除a/doc/frotz
- 例:frotz/则会排除doc/frotz/、a/doc/frotz/、frotz等
 
- 例:
- AAA/将只会匹配在任何一级目录下的- AAA目录,而- AAA则会匹配在任何一级目录下的目录或文件- AAA。
- *匹配任意字符串除了- /,而- ?匹配任意单个字符除了- /。
- [a-zA-z]用来匹配在这个范围内的单个字符。
下面来介绍**的用法:
- **/表示在任何目录下,即- **/foo其等价于- foo。
- /**表示在目录中的东西,比如- foo/**表示- foo文件夹下的任何东西都被排除(但- foo目录本身不会被排除)。
- a/**/b将匹配- a/b、- a/x/b、- a/x/y/b等等。
 
                     
                     
                        
                        