2014-08-28 107 views
1

我正在使用TFS 2008和2010,並且我認爲當您檢入未更改的文件時,TFS應自動確定沒有更改,並撤消更改而不是創建新的更改它。TFS提交未更改的文件

爲了測試這個,我只是簡單地檢查我的解決方案中的任何單個文件(例如web.config)。然後,我(不作任何改動)立即檢查它。我查看文件的歷史記錄,看看它有一個新的變更集。當我將該文件與前一版本進行比較時,它會顯示「文件完全相同」。

我認爲它不應該創建一個新的變更集,因爲該文件沒有改變。我認爲這是它應該工作的方式,我也認爲這是它爲我工作的方式。我錯了嗎?有沒有人有關於我如何解決這個問題的想法?

回答

0

我確定了導致我的問題的原因。我的組織最近在所有計算機上啓用了本地安全策略設置「系統加密:使用符合FIPS的算法進行加密,散列和簽名」。顯然,VS/TFS 2008和2010並沒有完全處理這個設置,文件檢入/比較是導致衝突的一個地方。

按照設計,VS 2008和VS 2010應該只提交確實已更改的文件。如果某個文件處於待處理狀態但尚未進行實際修改,則應在您告訴它檢查該文件時撤消檢出。但是,啓用FIPS設置後,似乎無論如何都會提交該文件。

要解決此問題,需要禁用FIPS設置並重新啓動Visual Studio。

0

如果您使用的是本地工作區,但不適用於服務器工作區, 2012年的TFS 2012中引入了本地工作區,並且與以前的版本不具有可比性。

我注意到2010年更不用說2008年了,但是如果我沒有記錯的話,您明確表示要檢查整個解決方案然後登記。在服務器workspce中,爲了提高潛在性能大型代碼庫不會執行這些檢查。