2017-03-03 28 views
2

我有一個「參數」文件在回購,我已經添加到.gitignore,所以它不被跟蹤。添加忽略的文件回購,但不跟蹤後

我需要推它一次,以便它在回購中顯示,但確保它不被跟蹤。這是因爲我會繼續修改它(因爲它存儲輸入參數),我只想要在回購中顯示默認版本。

如果我git add --force my_params.dat該文件被推送,但它不斷被追蹤,我不想。

實現此目的的正確步驟是什麼?我傾向於避免使用git update-index --assume-unchanged FILE_NAME,因爲我覺得它隱藏了跟蹤過程,但我並不嚴格反對使用它。


如果我在這個問題How to make Git "forget" about a file that was tracked but is now in .gitignore?使用的答案,我需要:

  1. 刪除參數從.gitignore

  2. 推送文件文件,並更改.gitignore

  3. 重新添加參數文件到.gitignore並推送

  4. 刪除所有跟蹤的文件與git rm --cached -r .

  5. 重新添加的所有文件git add .和推動他們

這不工作,因爲它刪除參數從回購文件時,我推。這不是我需要的。

+0

如果你低估了,你能解釋一下爲什麼?對我或任何其他人而言,你的沉默寡言無助。 – Gabriel

+1

可能的重複[如何使Git「忘記」已跟蹤的文件,但現在在.gitignore中?](http://stackoverflow.com/questions/1274057/how-to-make-git-forget-about -a-file-that-was-tracked-but-is-now-in-gitignore) –

+1

這是這個問題的重複嗎?我目前的參數文件甚至沒有被跟蹤,我不需要讓'git'忘記它。 – Gabriel

回答

6

我不認爲這是有意也不可能通過git。

我會建議分層加載paraemter文件。您要麼加載parameters.file,要麼加載paramters.default.file(如果不存在)。 paramters.default.file保存在git中,而parameters.file被忽略。

想要修改參數的用戶需要爲此創建一個文件parameters.file(或者您可以在某個make/setup過程中自動執行該過程)。

+0

這不是有意的,但可能的。 – ckruczek

+0

@ckruczek可以根據用戶的要求自由提供答案。我現在改變了我的答案。 – Marcus

+0

我已經在我的評論中做了鏈接副本。就這樣,這是不合理的,有意的,但可能的。 – ckruczek

相關問題