模式 | 匹配 |
空行 | 空行不匹配任何目录或文件。 |
# | 以 # 开头的行作为注释。 |
foo | 匹配任何目录中名称为 foo 的目录或文件。同模式 **/foo 。 |
foo/ | 匹配任何目录中名称为 foo 的目录。同 **/foo/ 。 |
foo.txt | 匹配任何目录中名称为 foo.txt 的文件。同 **/foo.txt 。 |
/foo | 匹配 .gitignore 文件所在目录的 foo 目录或文件。 |
/foo/ | 匹配 .gitignore 文件所在目录的 foo 目录。 |
/foo.txt | 匹配 .gitignore 文件所在目录的 foo.txt 文件。 |
foo/bar | 匹配 .gitignore 文件所在目录下 foo 目录中的bar 目录或文件。 |
foo/bar/ | 匹配 .gitignore 文件所在目录下 foo 目录中的 bar 目录。 |
foo/bar.txt | 匹配 .gitignore 文件所在目录下 foo 目录中的 bar.txt 文件。 |
*.a | 匹配任何目录中以 .a 结尾的文件,* 匹配除斜杠(/ )以外的零个或多个任意字符。 |
*.[oa] | 匹配任何目录中以 .o 或 .a 结尾的文件,* 匹配除斜杠(/ )以外的零个或多个任意字符。 |
*~ | 匹配任何目录中以波浪符(~ )结尾的文件,* 匹配除斜杠(/ )以外的零个或多个任意字符。 |
**/foo | 匹配任何目录中名称为 foo 的目录或文件。同模式 foo 。 |
**/foo/ | 匹配任何目录中名称为 foo 的目录。同模式 foo/ 。 |
**/foo.txt | 匹配任何目录中名称为 foo.txt 的文件。同模式 foo.txt 。 |
**/foo/bar | 匹配任何目录中在 foo 目录下名称为 bar 的目录或文件。 |
**/foo/bar/ | 匹配任何目录中在 foo 目录下名称为 bar 目录。 |
**/foo/bar.txt | 匹配任何目录中在 foo 目录下名称为 bar.txt 文件。 |
a/**/z | 匹配 .gitignore 文件所在目录下 a 与 z 之间任意零个或多个中间目录,a/z 、 a/b/z 或 a/b/c/z 等。 |
foo/**/*.pdf | 匹配 .gitignore 文件所在目录下 foo 目录及其所有子目录下的 .pdf 文件。 |
abc/** | 匹配 .gitignore 文件所在目录下 abc 目录中的所有目录和文件。 |
[abc] | 匹配在方括号(又称范围)中的一个任意字符 (这个例子要么匹配一个 a ,要么匹配一个 b ,要么匹配一个 c )。 |
[0-9] | 匹配在方括号(又称范围)中的一个任意字符(匹配 0 到 9 十个数字中的一个)。 |
!lib.a | 可以在模式前加上叹号(! )取反。如果前一个模式通过匹配文件的形式排除,那可以被重新包含。如果前一个模式通过父目录的形式排除,则无法重新包含该文件。如果不作为取反需要使用! 时,可以转义\! 。 |
? | 匹配除斜杠(/ )以外的一个任意字符。 |
原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/linux/git/31556.html