#### 简介

一个文件，用于指定不跟踪的文件。

它的位置：`$XDG_CONFIG_HOME/git/ignore, $GIT_DIR/info/exclude, .gitignore`。

#### 格式

- 空白行不匹配任何文件。
- `\`用于转义。
- 以`#`开头的行是注释。
- 行尾空格将被忽略。
- 以`!`开头的模式将否定该模式，这样前面模式被忽略的文件可以再次被包含。
- `/`用于分割目录。如果`/`在开头或中间，则这个模式是相对于`.gitignore`所在的目录而言的。如果`/`在末尾，则这个模式会匹配`.gitignore`所在目录下的所有目录。不以`/`结尾的，即可以是目录，也可以是文件。
- `*`匹配任意数量的字符，除了`/`。
- `?`匹配任意一个字符，除了`/`。
- `[a-zA-Z]`匹配任意一个a~z或A~Z的字符。
- `**/`匹配所有的目录。用法比如`**/foo/bar`。
- `/**`匹配所有的目录和文件。用法比如`abc/**`。
- `a/**/b`匹配a和b之间的零个或多个目录。