2010-12-10 89 views
0

時禁用「保留本地版本」有沒有辦法在登記時禁用「保留我的更改」按鈕?在簽入代碼

例如:

當人A被改變在Visual Studio 2010是源控制下類x.cs(2010 TFS),和人B也改變在VS2010類x.cs。

和用戶B沒有檢查他的代碼,而該人要檢查,在他的代碼之後,Visual Studio中來了一個信息,即有衝突:

入住

由於衝突的更改而未簽入文件。請使用衝突頻道解決衝突,然後重試。

然後人B可以比較代碼,放棄他的改變,但也有一個按鈕'保留本地版本'。如果點擊該按鈕,則人員A所做的更改將丟失。

爲了防止這種情況,我真的很想知道是否可以禁用此按鈕。

或者制定簽入政策或防止發生此示例。

回答

0

我有點困惑。我從來沒有見過「新版本」的消息 - 至少不是.cs文件。人們正在檢出他們正在編輯的文件,還是僅將只讀文件標記爲可寫,以便他們可以進行更改?

請確保在源代碼管理選項中設置爲自動簽出,或者提示您在編輯文件時簽出。

總的來說,你最好的選擇就是訓練和頻繁的前向整合。從本質上講,開發人員應該接受培訓,始終「得到最新」,解決任何衝突,然後簽入。這將完全消除此問題。

+0

你有點權。 「新版本」消息實際上是消息:「簽入 - 由於衝突的更改而未簽入文件。請使用衝突頻道解決衝突,然後重試。在此消息之後,您可以查看「頻道」並選擇「保留本地版本」。最好的方式是開發人員應該總是做最新的事情,但有些則不行。因此,通過禁用「保留本地版本」按鈕來強制執行此操作可能是一種解決方案。 – Dennis 2010-12-10 14:15:27

2

有一箇舊的*說,社會問題的技術解決方案很少工作。你在這裏有一個社會問題 - B人正在執行一個可能不是他們想要的行動。解決方案應該是一個社交解決方案 - 鼓勵所有人員爲他們的簽到負責,最重要的是當他們與共享的源代碼管理系統交互時,認爲。世界上所有的政策都不能代替思想。

當然,你可能會說,但有一個'安全捕捉',或一個警告機制,或其他什麼是很好的。對此我說 - 已經有一個,並且已經被明確承認!

此外,當B人的變化包括幷包含人A的時候會發生什麼,所以他們真的想要扔掉人A所貢獻的三角洲?


(*)我發現this reference從2002年,這實際上是在文藝復興時代的軟件開發 - 我敢肯定有年長

+0

一方面你是對的,它應該是開發者的責任。但是,很抱歉這麼說,我並沒有要求任何人的意見。我問是否可以禁用按鈕。但我不認爲我會回答我的問題。所以我必須忍受一些開發人員在檢查代碼時不認爲的知識,並且在我告訴他們一千次以後也不會開始思考。另外,我不能去我的經理要求他解僱一些人,因爲他們在簽入代碼時沒有想到...... – Dennis 2010-12-13 07:52:04