git忽略的原理:
git设置本地忽略必须保证git的远程仓库分支上没有这个要忽略的文件,如果远程分支上存在这个文件,本地在设置ignore 将不起作用。
所以一般是在.gitignore 文件里面加入 .idea/ workspace.xml 即可
但是如果你这样做之前已经将此文件提交到了git远程仓库,那就需要执行以下命令了:
git rm -r –cached .idea
补充:git修改某分支的忽略文件,切换到另一分支再切换回该分支,文件变成未修改状态的问题...
最近使用git遇到的这个问题,简单描述的话就是标题
详细描述一下的话:
最近将一个本地分支dev的配置文件修改了,但该配置文件是.gitignore文件是设置的忽略文件
于是,修改后,切换到另一分支做了一些其他的修改,再回到dev分支,运行,就报错,于是发现了配置文件还是原来未修改样子的问题
这个问题的原因大致猜测一下:
.gitignore设置了忽略的文件,且已经track了远程的分支的话,修改忽略的文件,实际上是无效的,切换回来还是原样;
因为本地的commit的head中,保存的还是未修改的忽略文件
解决方案:
这个方案比较麻烦吧,就每次修改忽略的文件前,将忽略设置注释,不忽略该文件,然后再commit;
之后,再设置为忽略(当然,这里要清暂存,然后再提交);最后,忽略追踪设置完成,再提交,则可以保存忽略文件的修改
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。
原文链接:https://blog.csdn.net/lucky9322/a