一、问题
- git上传的时候,我们已经将 xxx 文件添加到了.gitignore 中,但是在push 后,远程仓库还是会显示此文件。
二、原因
- xxx 文件在前面已经被 git 跟踪,在这之后再添加到 .gitignore 中是无效的。
三、解决方法
git rm -r --cached 文件/文件夹名字
# 去掉已经托管的文件,然后重新提交
git add .
git commit -m '提交说明'
注意:不要误解了.gitignore的用途,该文件只能作用于未被跟踪的文件,也就是那些从来没有被git记录过的文件(自添加以后,从未add及commit过的文件)。如果文件曾经被git记录过,那么.gitignore就对他们完全无效。
四、扩展
当我们需要删除暂存区或分支上的文件, 同时工作区也不需要这个文件了, 可以使用:
git rm file_path git commit -m 'delete somefile' git push