2012-03-08 53 views

回答

5

任何分支或項目,即 「刪除」 保持歷史。任何銷燬的分支或物品都將從數據庫中刪除,因此不在歷史中。刪除時沒有/ keephistory選項,因爲所有刪除都保留歷史記錄。我還沒有將這個/角色人物用於銷燬命令,所以我不能給你一個建議。只是閱讀它的文檔here我猜想,定期刪除和/ keephistory破壞之間的區別在於破壞不能逆轉。

在你描述的情況下,我不建議選擇分支,因爲那是你的歷史,關於誰改變了什麼生活。合併時,只有一個簽入包含所有已合併的更改,並且與合併中的簽入相關聯。

在TFS 2010之前,合併的歷史很難遵循,但如果花時間弄清楚的話可能會發生。在TFS 2010中,更容易看到通過分支進行更改的流程。

如果我知道你想要銷燬的理由,但我可以更好地回答,但這裏有幾件事要考慮:如果你正在銷燬,以幫助你減少磁盤空間1)分支不花費太多,因爲他們只保留差異不是一個完整的副本2)如果你正在銷燬以節省磁盤空間,並使用/ keephistory,我猜測它不會減少磁盤空間的使用。如果你正在銷燬,因爲OMG的代碼是垃圾,沒有人應該有機會遭受它的恐怖,那麼你可能會推翻事情。

+0

什麼BitOff寫afaik幾乎是正確的。分支可以大大增加磁盤使用量,如果你修改了很多文件的內容 - 甚至在這種情況下分割也無濟於事。銷燬文件的內容,同時保留元數據,更改歷史等等是爲什麼添加了記錄。如果你直接破壞分支的歷史將會丟失。 – MichalMa 2012-03-09 07:52:48

+0

好吧,但這實際上是TFS的一大缺點。當我合併一些東西時,我想合併這些更改。 – 2012-03-09 09:04:32

-1

是否刪除原始來源。 TFS中的任何內容都沒有真正刪除,只是置於「已刪除狀態」。

檢查此鏈接

Will deleting a project in TFS remove the files, or will the history be preserved?

+1

我認爲這是如果你做一個定期刪除,但如果你做一個銷燬該文件將被永久刪除。從您發佈的鏈接中找到:「但是,您可以使用tf.exe destroy永久刪除您的更改。」 – 2012-03-08 09:34:28

+0

正如@TomasJansson指出的,這僅適用於刪除。 – 2012-03-08 14:15:38

+0

這是寫的不正確。 「刪除」將保留歷史上的實際內容和修訂版,但不會在最新版本中看到。您可以稍後取消刪除某些內容。但是,「銷燬」標記它將完全從數據庫中刪除。它不會立即刪除,但有一個TFS作業可以找到所有這些內容並清理/刪除定期銷燬的內容。 – 2012-03-09 12:16:25

1

我實際上在TFS 2013中測試了tf destroy/keephistory選項。/ keephistory選項實際上只保留了View History and Comments,但刪除了所有文件的版本。如果您嘗試比較版本,則會出現文件版本被破壞的錯誤。因此,如果您想保存評論和修改代碼的人的歷史記錄,但實際上並不關心確切更改的內容,則可以使用/角色來節省磁盤空間。如果您真的想查看和比較舊版本,則應該將其保留在刪除狀態,因爲使用/ keephistory選項進行銷燬不會保留內容。如果代碼無用或者使用錯誤的名稱或其他東西簽入,請勿在沒有/ keephistory的情況下銷燬所有內容,包括「查看歷史記錄」和「評論」。