有时候在项目开发过程中,突然心血来潮想把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:( 先把要忽略的文件加入.gitignore,再执行下列命令):本地文件不受操作影响,删除的只是远程仓库中的文件(删除暂存区或分支上的文件,同时工作区需要这个文件,但是不需要被版本控制)
git rm -r --cache file_path # 后面添加进.gitignore文件中的文件可以使用这条命令解除版本控制的追踪,然后在commit忽略这个文件。
git add .
git commit -m "delete somefile"
git push
当需要删除暂存区或分支上的文件,同时工作区不需要这个文件:
git rm file_path
git commit -m "delete somefile"
git push
https://www.cnblogs.com/toward-the-sun/p/6599656.html
https://blog.csdn.net/voke_/article/details/80508500