.gitignore配置不生效的原因和解决方法

MoyiTech
2022-11-15 / 0 评论 / 204 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2022年11月28日,已超过506天没有更新,若内容或图片失效,请留言反馈。

问题发现

在.gitignore中标明了想要忽略文件,但git push的时候还会出现在push的目录中,或者用git status查看状态,想要忽略的文件还是显示被追踪状态。

原因

因为在git忽略目录中,如果某些文件已经被纳入了版本管理中,就算是在.gitignore中已经声明了忽略路径也是不起作用的,

解决方法

这时候我们就应该先把本地缓存删除,然后再进行git的push,这样就不会出现忽略的文件了。

git清除本地缓存(改变成未track状态),然后再提交。

git rm -r --cached .
git add .
git commit -m 'xxx'

总结:

.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
想要.gitignore起作用,必须要在这些文件不在暂存区中才可以,.gitignore文件只是忽略没有被staged(cached)文件, 对于已经被staged文件,加入ignore文件时一定要先从staged移除,才可以忽略。

原文链接

3

评论 (0)

取消