语法

.gitignore语法:

以”#”号开头表示注释;
以斜杠“/”开头表示目录;
以星号“*”通配多个字符;
以问号“?”通配单个字符
以方括号“[]”包含单个字符的匹配列表;
以叹号“!”表示不忽略(跟踪)匹配到的文件或目录;

​ git 对于 .ignore 配置文件是按行从上到下进行规则匹配的,意味着如果前面的规则匹配的范围更大,则后面的规则将不会生效;

​ 注:/在文件夹名前,表示根目录下的某个文件夹,/test/表示忽略根目录下的/test/目录的全部内容,而test/表示忽略文件夹test下的全部内容,不管是根目录下的/test/,还是某个子目录下的test文件夹,比如:/child/test,都会被忽略

用法

​ 下面演示下gitignore规则的常用用法

*.txt  ,*.xls  表示过滤某种类型的文件
target/ :表示过滤这个文件夹下的所有文件
/test/a.txt ,/test/b.xls 表示指定过滤某个文件下具体文件
!*.java , !/dir/test/ !开头表示不过滤
*.[ab] 支持通配符:过滤所有以.a或者.b为扩展名的文件
/test 仅仅忽略项目根目录下的 test 文件,不包括 child/test等非根目录的test目录

​ 对于之前已经add过的本地仓库,gitignore无法生效,我的建议是首先断开本地和远程仓库的关联,然后手动删除.git文件夹,重新初始化仓库