2011-12-02 61 views
4

我在git存儲庫中進行了一項更改,我不想傳播給任何其他人。我確實希望將更改保留在本地存儲庫中。也就是說,我想把我的回購合併到我所做的更改中。Git永久忽略更改集

理想的答案會以某種方式指定git,只要我發出合併命令,它應該永久地忽略某個變更集。我寧願不必在每次合併時都選擇變更集。

爲什麼?

如果您對感興趣,爲什麼:我正在使用git-tfs。 Visual Studio具有將TFS綁定存儲在解決方案和項目文件中的不幸習慣。我想刪除這些綁定,以便VS停止抱怨綁定錯誤,但是如果我意外地將修改後的文件檢查到TFS中,它將會破壞仍然使用TFS的我所有團隊成員的TFS-VS集成。

如何?

有沒有一種簡單的方法讓我指示git在執行合併時總是忽略某個變更集?

+0

你有沒有找到答案?我是我的項目中唯一使用Git的人,所以我想創建一個.gitignore並在本地提交,但不會將其推送到TFS。 –

回答

1

一個簡單的想法:創建一個單獨的本地分支,您可以在其中獨立地執行這些特殊的本地更改。然後,當你從外部回購協議中提取時,你可以使用cherry-pick那個特定的提交到你已經提交到你想要的狀態的提交 - 你甚至可以爲它創建一個別名。

您可能還想分支已提交的提交,這樣您就可以擁有一個用於推送的「乾淨」版本和用於執行工作的「您的」版本,並且/或者您可以在之前提交包含特殊消息的提交你推(與你的正常rebase進程一起)。顯然你不想推動任何有你當地特殊設置的分支。

+1

我很難理解如何在推回到TFS時嘗試編寫我實際想要推送的分支時如何在沒有大量額外工作的情況下使用此過程。聽起來像,爲了推回到TFS,我需要恢復本地提交,重新綁定到我的主服務器上,推送更改集,然後重新應用本地提交。有沒有一種方法來編寫恢復重新申請過程的腳本? – Eric