最近我遇到了一個問題,那就是我們團隊中的開發人員(主要是我)有開放項目的傾向,在編碼之前忘記獲取最新版本,我們最終創造了新的更改舊代碼。Visual Studio 2012 - 自動獲取最新版本
如果Visual Studio知道我即將對舊代碼進行新的更改,並警告我或自動爲我提供最新版本,那就太好了。
這可能嗎?
編輯:我忘了提我使用TFS
最近我遇到了一個問題,那就是我們團隊中的開發人員(主要是我)有開放項目的傾向,在編碼之前忘記獲取最新版本,我們最終創造了新的更改舊代碼。Visual Studio 2012 - 自動獲取最新版本
如果Visual Studio知道我即將對舊代碼進行新的更改,並警告我或自動爲我提供最新版本,那就太好了。
這可能嗎?
編輯:我忘了提我使用TFS
這個問題問得好,幸運的是,答案是「是」(因爲你正在使用TFS在您的評論指定)。
轉至工具>選項>源代碼管理(左側)>環境,並確保選中「解決方案或項目打開時獲取所有內容」。
我必須補充,不過,這樣的場合實在不應該被用來作爲良好的生活習慣和最佳做法的替代品。您和您的團隊應該知道的「獲得最新」的地步,讓你想以獲得最新的,不想沒有它的工作(如果你是在項目階段)的重要性。
潛在的「缺點」這樣:
在奇怪的時刻,你會聽到我們的團隊成員說:「沒有得到最新的呢。」由於他們已經做了一個錯誤的登機手續。如果他們打破構建 - 你會得到這個破碎的構建。不是一個理想的情況,它不應該發生,但事實是,它確實如此。如果它自動執行,則會失去該控件的一個元素。
更不用說,如果您的團隊忘記獲取最新信息,他們忘記檢查變更集以查找潛在問題的可能性更大。在「解決衝突」對話框並不總是突出每問題,你需要知道的。
我認爲一個非常小的缺點也可能是項目的啓動時間(微軟最近擺脫這個功能的原因之一,正如你所提到的)。你不再只是開放一個解決方案,你打開它並等待最新的。那麼可能需要進一步關注(解決衝突)。
現在我可能會漫不經心 - 但是如果您選擇了可能不熟悉源代碼控制概念(例如獲取最新版本)的後輩,那該怎麼辦?如果它一直被照顧,他們可能會錯過一個竅門。例如,假設VS打開但由於暫時關閉而無法連接到TFS服務器。這是否會導致一個已經健忘的團隊在以後明確地獲得最新消息?
嗯,我絕對想要獲得最新版本...我只是忘記每一次在一個藍色的月亮。我的錯,當然。您提到最佳實踐,使用'在解決方案或項目打開時獲取所有內容'有什麼不利嗎? – TheIronCheek
另一個很好的問題,請參閱編輯。 –
感謝您的澄清。總結一下,最好的做法是手動做,強迫自己記住。自動選項很方便,但如果其他開發人員檢測到代碼不正確或者VS無法連接到TFS服務器,可能會導致用戶過於依賴並導致問題? – TheIronCheek
你沒有提到你使用的是什麼版本控制。我不認爲Visual Studio可以檢測代碼是否過期。如果你使用類似的Git,你可以只是確保編寫任何新的代碼(事實上,如果你使用的Git前啓動一拉,它需要你,如果你的本地庫不與遠程存儲庫能夠推前拉)。 –
我正在使用TFS。對不起,我忘了在提問中提到。 – TheIronCheek
如果使用Team Foundation Server中看到這個[文章](http://stackoverflow.com/questions/4722366/automatically-get-latest-version-when-you-open-solution-project)。 – Y0ST