.gitignore添加忽略文件失效、不起作用原因分析

由于特殊原因,把.gitignore文件下 /dist 注释了,也就是把dist 文件添加到git仓库里了,
现在又不想添加到git仓库里了,但是把/dist 注释放开还不行,就是.gitignore失效了,查阅资料才知道

.gitignore 只对未跟踪的文件起作用!

已跟踪的文件是指那些被纳入了版本控制的文件,在上一次提交中有它们的记录。那么未跟踪文件就是指那些从没提交过的文件。

因为上次已经把/dist 整个提交上去了,所以这时候.gitignore已经不行了

要想实现git 忽略dist文件夹,需要下面几个步骤

1. 取消文件跟踪

git rm 或者 git rm --cached

git rm : 同时从工作区和索引中删除文件。即本地的文件也被删除了。

git rm --cached:从索引中删除文件,但是本地文件还存在, 只是不希望这个文件被版本控制。

这里我使用第二个,具体用法就是 git rm --cached -r dist

-r 的意思是递归处理,如果不加 -r的话,会报错

如果取消某个文件的跟踪,可以不用 -r 直接 git rm --cached dist/index.less

2. 把 gitignore 提交上去

git add .
git commit -m ‘修改gitignore’
git push
以后本地dist目录下文件再变的话,也不会被跟踪到了,其他小伙伴,只需git pull 一下就可以,注意:远程的dist也被删掉了

3. 如果不想删除远程例如page.json文件又想忽略本地文件:

可以在本地复制page.json,重命名为page_back.json, 提交
其他小伙伴拉下来代码的时候,去掉_back即可使用

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容