0
我每次運行腳本時都會有一些「資源文件」被更改。這些文件位於名爲'res/
'的文件夾中。收集所有這些文件中的數據需要一段時間,所以我不想在每次抽出時都擺脫它們,但是,我不想在更改時提交它們。我把它們列在一個.gitignore中,但似乎我在創建新分支,合併分支和拉動之間鬆開了它們。忽略要提交但保留它們的文件
我該如何讓git不刪除它們,但不跟蹤它們?
我每次運行腳本時都會有一些「資源文件」被更改。這些文件位於名爲'res/
'的文件夾中。收集所有這些文件中的數據需要一段時間,所以我不想在每次抽出時都擺脫它們,但是,我不想在更改時提交它們。我把它們列在一個.gitignore中,但似乎我在創建新分支,合併分支和拉動之間鬆開了它們。忽略要提交但保留它們的文件
我該如何讓git不刪除它們,但不跟蹤它們?
您可以使用:
git update-index --assume-unchanged <file>
..to防止從Git的跟蹤變更。完成後,您可以使用:
git update-index --no-assume-unchanged <file>
..要讓Git重新跟蹤它們。我很肯定這會防止在使用git pull
時覆蓋文件,但我不是100%。
來源:http://blog.pagebakers.nl/2009/01/29/git-ignoring-changes-in-tracked-files/
文件通過'匹配.gitignore'是字面上的git完全被忽略,所以git會不會移動或刪除(除非您明確要求它運行'git的清潔-X')。如果你丟失了這些文件,必須有其他的東西清理它們,或者他們已經在其中一個分支中犯下了錯誤。 – Kornel
@porneL我認爲我創建並檢出一個新分支後,我消失的文件消失了。不完全確定,但我注意到之後他們錯過了。 –