gitignore 文件格式

gitignore

文件 .gitignore 用于指定 Git 需要忽略的非跟踪文件。文件的每一行都指定一个模式(pattern),其模式的格式如下:

  • 空白行,不匹配任何文件。

  • # 开头的行,被当做注释。

  • ! 开头的行,详看注解 1

  • 如果有 / 出现在模式的开头或中间,则此模式匹配相对于 .gitignore 所在目录级别,否则此模式匹配任何低于 .gitignore 的级别。

  • 如果 / 出现在模式的结尾,则此模式仅匹配目录,否则同时匹配文件和目录。

  • 特殊字符,详看注解 2

  • 前缀 **/,表示此模式匹配任何目录。比如 **/foo/bar 匹配在目录 foo 下的任何文件或目录 bar

  • 后缀 /**,表示此模式匹配任何内部的文件。比如 abc/** 匹配目录 abc(相对于 .gitignore 所在目录)下的任何文件。

  • /**/ 表示匹配 0 个 或多个目录。比如 a/**/b 匹配 a/ba/x/ba/x/y/b 等。

    注解:

    1. ! 开头的行

      表示可以使任何被之前的模式匹配而忽略的文件再次被包含。但是被忽略的目录中包含的文件不可以再次被包含,因为 Git 为了性能不列出被忽略的目录。

    2. 特殊字符

      特殊字符 说明
      * 匹配任何除了 / 之外的字符串(包含空字符串)
      ? 匹配任何除了 / 之外的单个字符
      [a-zA-Z] 范围标记,匹配任何范围内的单个字符
      \ 用于使之后的特殊字符转义为字面含义(包括 #!
posted @ 2021-08-23 16:47  fluidog  阅读(325)  评论(0编辑  收藏  举报