soureTree忽略文件失效解决办法

最近在使用soureTree做代码git管理的时候出现了一个小插曲,暂且记录吧!

一.问题浮现
代码第一次提交时,可以看到,指定上传的文件只有一些资源性文件和可操作性的代码,编辑器的相应的文件都被忽略掉了


image.png

这个时候是编辑器中 .gitignore文件,也就是忽略文件作用的效果


image.png

但是,再第一次commit代码的时候,为了多人开发必须保证项目的完整性,所以一些编辑器文件也需改变,注意,此时要上传一些编辑器的文件,之后恰恰相反,也就是出现问题的场景原因。

1.找到忽略的代码,并提交


image.png

2.填写提交信息,这里直接推送到了远程orgin/maste上


image.png

3.提交后,第一次提交项目就算是结束了,刷新下远程库,可以看到代码已经在存在了


image.png

一直到这,应该说还算是很顺利的把本地代码用git托管到了远程库上
BUT

二.问题浮现

在MainActivity.java文件中简单添加一行测试方法methodTest();


image.png

此时按照设想,应该在soureTree中只提交改变MainActivity.java中的代码。
但是,很显眼的.idea 文件笔挺挺的在那晃呢?


image.png

不对啊!不是刚才已经忽略过了,这个时候怎么又不忽略了?目前怀疑是soureTree默认被选中过的忽略文件,在改变后默认不再被忽略,且入加入soureTree的缓存中,我就是被这缓存给坑的。
于是查资料,有人说是要在设置中,在soureTree的文件中,再添加相应的忽略属性。这里也说下吧,入口是 设置-> 高级


image.png

点编辑 这个 仓库指定忽略列表,写 /.idea/workspace.xml(这个是相对应的,因为此情景这个是个案例,其他文件一样添加即可),意思就是忽略.idea文件夹的workspace.xml文件


image.png

保存,心想着终于搞定了,于是刷新,不行,也有可能是我打开方式不对,关掉soureTree,重启,依然不行。


image.png

它还在那里嘲笑我看不惯它,又弄不死它的样子……

三,解决问题
想了好久,也查了好多,最后还是被soureTree的缓存给坑的。
上干货吧!
1.找到 soureTree中终端,打开输入 清楚文件夹指令:

  git rm -r  --cached .
image.png

2.然后输入:git add . ,此命令为添加更改变化
3.最后:”git commit -m”,此命令为添加更改变化!


image.png

搞完收工。
回过去看看


image.png

/.idea/workspace.xml 已经被忽略掉了,在忽略的文件中躺着呢


image.png

原文链接:https://blog.csdn.net/mijiaxiaojiu/article/details/81100376

推荐阅读更多精彩内容