gitignore 文件格式
gitignore
文件 .gitignore 用于指定 Git 需要忽略的非跟踪文件。文件的每一行都指定一个模式(pattern),其模式的格式如下:
-
空白行,不匹配任何文件。
-
以
#
开头的行,被当做注释。 -
以
!
开头的行,详看注解 1 -
如果有
/
出现在模式的开头或中间,则此模式匹配相对于.gitignore
所在目录级别,否则此模式匹配任何低于.gitignore
的级别。 -
如果
/
出现在模式的结尾,则此模式仅匹配目录,否则同时匹配文件和目录。 -
特殊字符,详看注解 2
-
前缀
**/
,表示此模式匹配任何目录。比如**/foo/bar
匹配在目录foo
下的任何文件或目录bar
。 -
后缀
/**
,表示此模式匹配任何内部的文件。比如abc/**
匹配目录abc
(相对于.gitignore
所在目录)下的任何文件。 -
/**/
表示匹配0
个 或多个目录。比如a/**/b
匹配a/b
、a/x/b
、a/x/y/b
等。注解:
-
以
!
开头的行表示可以使任何被之前的模式匹配而忽略的文件再次被包含。但是被忽略的目录中包含的文件不可以再次被包含,因为 Git 为了性能不列出被忽略的目录。
-
特殊字符
特殊字符 说明 * 匹配任何除了 /
之外的字符串(包含空字符串)? 匹配任何除了 /
之外的单个字符[a-zA-Z] 范围标记,匹配任何范围内的单个字符 \ 用于使之后的特殊字符转义为字面含义(包括 #
、!
)
-