概述
一些工作区中的文件不需要提交到远程,所以需要让git忽略他们,不对其进行检测,方法就是创建.gitignore文件
忽略规则
语法
以斜杠/
开头表示目录;
以星号*
通配多个字符;
以问号?
通配单个字符
以方括号[]
包含单个字符的匹配列表;
以叹号!
表示不忽略(跟踪)匹配到的文件或目录;
此外,git 对于 .ignore 配置文件是按行从上到下进行规则匹配的,意味着如果前面的规则匹配的范围更大,则后面的规则将不会生效;
示例
忽略
# 忽略根目录下的public下的所有目录及文件
/public/*
# 忽略所有目录名为public下的所有目录及文件
public/*
# 忽略具体的文件
/public/index.html
# 忽略所有的.zip文件
*.zip
# 忽略 a.zip b.zip
[ab].zip
保留
# 不过滤该文件夹
!src/
问题
忽略规则不生效
原因是当前文件已经被加入到git仓库中
git rm -r --cached .
git add .
git commit -m 'update .gitignore'