gitignore文件不生效
gitignore文件里面明明写好了.idea文件的忽略规则,理论上不会提交,但是每次改完代码要提交之前查看status,都会提示.idea里的某个文件有改动,需要提交,这就很烦心了,搜了下其他人的博客,解决方法如下:
-
原因
.gitignore只能忽略之前没有被staged(缓存)的文件,如果已经staged纳入了版本管理中,在修改.gitignore是无效的,查看了下远程的代码,确实存在.idea文件,说明它之前被提交过,已经staged过了;
下面这段话来自github: .gitignore文件不工作 因此,要想用gitignore忽略文件,必须先把它们从staged中移除 -
解决方法
git rm -r --cached xxx.xml(要忽略的文件名)(最好别用git rm -r --cached . 效果有点吓人)
git add .
git commit -m ‘update .gitignore’
上面的三行代码,就清除了这个文件的本地缓存,从staged中移除了,这样.idea文件就会按照修改之后的gitignore规则来执行了,不会在提交了;