Git忽略规则.gitignore梳理

来源:互联网 发布:新网互联域名转移 编辑:程序博客网 时间:2024/05/21 08:47

工程根目录下建立.gitignore文件,将要排除的文件或文件夹写到.gitignore这个文件中。这种方式会让这个工程的所有修改者在克隆代码的同时,也能克隆到过滤规则,而不用自己再写一份,这就能保证所有修改者应用的都是同一份规则,而不是张三自己有一套过滤规则,李四又使用另一套过滤规则,个人比较喜欢这个方式。.gitignore文件的规则如下:

规则说明:

一、配置语法:

  1. (#) 表示注释
  2. (*)表示通配多个字符;

    *.html(忽略所有生成的 html文件)
  3. (?)通配单个字符;
  4. ([abc]) 代表可选字符范围

    *.py[cod](忽略所有.pyc,.pyo.pyd的文件)
  5. (!)表示不忽略(跟踪)匹配到的文件或目录;
  6. 以斜杠“/”结尾表示目录:

     TODO:忽略工程中所有名为TODO文件和名为TODO目录 TODO/:只忽略工程中名为TODO目录,不忽略名为TODO文件 TODO  , !TODO/ :只忽略工程中名为TODO文件,不忽略名为TODO文件夹

二、注意事项:

如果名称最前面是路径分隔符(/) (如:/TODO),表示仅仅忽略项目根目录下的文件和文件夹/TODO,不包括子文件夹 subdir/TODO
如果名称最前面无路径分隔符 (/)(如:TODO),表示忽略项目所有目录下的文件和文件夹/TODO,也就是包括subdir/TODO

如:

TODO:忽略工程中所有名为TODO文件和名为TODO文件夹TODO/=TODO/*:只忽略工程中所有名为TODO文件夹,但不忽略名为TODO文件(注意,不管是根目录下的 /TODO/ 文件夹,还是某个子目录下的文件夹 subdir/TODO,都会被忽略;)/TODO/=TODO/*:只忽略**项目根目录**下的 /TODO/文件夹,**不包括子文件夹和名为TODO的文件***.a , !lib.a :忽略所有 .a 结尾的文件,但 lib.a 除外build/ :忽略 build/ 目录下的所有文件doc/*.a:会忽略 doc/notes.a, 但不包括 doc/server/arch.a
0 0
原创粉丝点击