gitignore文件匹配规则

作用域

  • gitignore只匹配其所在目录及子目录的文件。
  • 已经被git track的文件不受gitignore影响。
  • 子目录的gitignore文件规则会覆盖父目录的规则。

文件与文件夹匹配

  • 在表达式前头出现/则匹配从当前目录(gitignore所在目录)开始的相应文件/文件夹。
  • 在表达式后加/来匹配文件夹。如表达式hello/只会匹配文件夹hello, 而不会匹配文件hello。
  • **匹配任意文件/文件夹,或者空内容。如a/**/b匹配a/b,a/x/b以及a/x/y/b

模糊匹配

  • *匹配除了/之外任意数量的任意内容。
  • ?匹配除了/之外的任意一个字符。
  • []匹配包含在[]范围内的任意字符。

取消匹配

  • 在表达式前使用!来取消匹配,然而当其父文件夹已经被其他表达式匹配时,则该条表达式无效。

特殊字符

  • 在git中有特殊含义的字符如!, #等在匹配时在前面加\来转义。
  • 表达式后面的空格会在匹配时被忽略掉,如果想要匹配名字后面带有空格的文件/文件夹时,可以使用\加空格来匹配空格。

其他

  • 使用#添加注释。
    原文作者:张海东
    原文地址: https://segmentfault.com/a/1190000019725760
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞