一、前言

    在日常的开发中,当我们需要将一个项目提交到 Git 时,并不是所有的文件都需要提交,比如一些自动生成的文件,类似于 .idea 文件、class 文件等,这时候就可以使用.gitignore来忽略一些不需要提交的文件,本文着重介绍一下.gitignore的配置语法。

二、语法规范

1、空行或是以 # 开头的行即注释行将被忽略。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

2、可以在前面添加 正斜杠/ 来避免递归,下面的例子中可以很明白的看出来与下一条的区别。

3、可以在后面添加 正斜杠/ 来忽略文件夹,例如 build/ 即忽略 build 文件夹,/doc/build/ 这样的目录也会忽略。

4、可以使用 ! 来否定忽略,即比如在前面用了*.apk,然后使用!a.apk,则这个a.apk不会被忽略。

5、* 用来匹配零个或多个字符,如*.[oa]忽略所有以".o"或".a"结尾;

6、[] 用来匹配括号内的任一字符,如 [abc],也可以在括号内加连接符,如 [0-9] 匹配0至9的数;

7、? 用来匹配单个字符。

# 忽略 .a 文件
*.a
# 但否定忽略 lib.a, 尽管已经在前面忽略了 .a 文件
!lib.a
# 仅在当前目录下忽略 TODO 文件, 但不包括子目录下的 subdir/TODO
/TODO
# 忽略 build/ 文件夹下的所有文件,/doc/build/ 这样的目录也会忽略
build/
# 忽略 doc/notes.txt, 不包括 doc/server/arch.txt
doc/*.txt
# 忽略所有的 .pdf 文件 在 doc/ directory 下的
doc/**/*.pdf

 

分享一个自动生成 .gitignore 文件的 IDEA 插件 .ignore,生成各种ignore文件,一键创建git ignore文件的模板,免得自己去写:

 Git 中 .gitignore 的配置语法 随笔

 

我们公司使用 IDEA 工具构建 Maven 项目,贴一份我们公司使用的 .gitignore 文件:

# Created by .ignore support plugin
*.class
target/
*.iml
.idea/
logs/
.classpath
.project
.settings/
.amateras
/target*
*.log*
*.lock
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄