gitignore

.gitignore 指定忽略的文件

模式匹配

  1. 空行忽略,只是增加可读性
  2. #开头 注释
  3. 空字符会被忽略
  4. !取反后面的模式。匹配模式的被跟踪。考虑到性能,git不会列出被忽略的目录的文件,所以包含多个文件的模式不起作用。
  5. 如果模式以/结尾,将只匹配目录。 如foo/将匹配目录foo和foo下的所有
  6. 如果模式没有/,git会检测相对于.gitignore的路径(如果没有.gitignore,相对于项目根目录)
  7. 其他的,按照shell glob模式匹配
  8. 以/开头的模式匹配路径的开头。如 /*.c 匹配 cat-file.c 而不匹配mozilla-sha1/sha1.c

**有几种特殊含义

  1. **/foo 匹配 任意的文件或目录foo 同 模式 foo
  2. /** 匹配里边所有东西
  3. a/**/b 匹配
  4. 其他都无效