2011-11-09 65 views
0

我有一些XSD的文件,我生成了使用MS的XSD.exe實用程序的類。TFS - 如果有其他文件正在簽入,則執行某個文件的簽出+簽入

我用的是預編譯,以檢查出的生成代碼的類文件和後檢查回。

由於有幾個開發者在同一項目上工作,這種情況正在發生,每次每個決定重建我們一直在它上面發生衝突,這不是真正的衝突(只是由生成的cs文件的標題中包含的稍微不同的xsd工具版本引起的)。

爲了解決這個問題,我想先將XSD的內容與源服務器進行比較,然後才執行checkout + check-in操作。

有沒有辦法使用TFS來做到這一點?

注意:我嘗試在tf.exe中使用diff命令,但它不返回可用於瞭解比較結果的退出代碼。

任何幫助,將不勝感激......

+0

嘗試使用Power Tools的「tfpt uu」命令,該命令將撤消對實際未更改的文件的任何掛起更改。如果有任何尚未完成的更改,請將其簽入。 – jessehouwing

回答

0

您可以使用tf.exe併爲XSD文件執行GET命令,如果返回「所有文件都是最新的」你知道,你不在處理中不必檢查/創建/檢查

0

我的建議是解決問題的原因而不是症狀。

開發時,您應該嘗試讓您的開發人員和構建服務器都使用完全相同的工具和源代碼集運行,這樣您就可以獲得一致的結果。您不能保證來自兩個不同版本工具的輸出始終是相同/兼容的。簡單的不匹配的版本號是沒有問題的,但是如果您生成的最終程序根據創建者的不同而有細微的差別呢? Fred可能永遠無法重複並修復客戶抱怨的錯誤。或者你可能會認爲你已經修補了這個主要的ATL安全漏洞,直到有一天你意識到你已經從一個你沒有打算修補的構建服務器運送產品。

這是一個非常簡單的事情,有一個標準化的安裝過程(一個「如何安裝」文檔,每個人都認真遵守,一個盒子包含正確的DVD,和/或網絡文件夾或包含該集合的源文件控制文件夾要使用的安裝程序,要鏈接的庫等)