git忽略的原理:
git設(shè)置本地忽略必須保證git的遠程倉庫分支上沒有這個要忽略的文件,如果遠程分支上存在這個文件,本地在設(shè)置ignore 將不起作用。
所以一般是在.gitignore 文件里面加入 .idea/ workspace.xml 即可
但是如果你這樣做之前已經(jīng)將此文件提交到了git遠程倉庫,那就需要執(zhí)行以下命令了:
git rm -r –cached .idea
補充:git修改某分支的忽略文件,切換到另一分支再切換回該分支,文件變成未修改狀態(tài)的問題...
最近使用git遇到的這個問題,簡單描述的話就是標題
詳細描述一下的話:
最近將一個本地分支dev的配置文件修改了,但該配置文件是.gitignore文件是設(shè)置的忽略文件
于是,修改后,切換到另一分支做了一些其他的修改,再回到dev分支,運行,就報錯,于是發(fā)現(xiàn)了配置文件還是原來未修改樣子的問題
這個問題的原因大致猜測一下:
.gitignore設(shè)置了忽略的文件,且已經(jīng)track了遠程的分支的話,修改忽略的文件,實際上是無效的,切換回來還是原樣;
因為本地的commit的head中,保存的還是未修改的忽略文件
解決方案:
這個方案比較麻煩吧,就每次修改忽略的文件前,將忽略設(shè)置注釋,不忽略該文件,然后再commit;
之后,再設(shè)置為忽略(當然,這里要清暫存,然后再提交);最后,忽略追蹤設(shè)置完成,再提交,則可以保存忽略文件的修改
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持服務(wù)器之家。如有錯誤或未考慮完全的地方,望不吝賜教。
原文鏈接:https://blog.csdn.net/lucky9322/a