2008-08-27 225 views
16

在這裏,我們已經使用了大量的Visual Source Safe存儲庫大約10年左右。Visual Source Safe - > TFS遷移

現在我想擺脫sourcesafe並轉到Team Foundation Server。

在我進行此遷移之前,您有任何提示或技巧嗎?我必須注意哪些事情?

我確信這種遷移將意味着我們的工作習慣必須以某種方式進行修改。你認爲這些變化可能會給組織帶來問題嗎?在一個站點上考慮一組大約20位.NET開發人員。

回答

2

我剛剛搜索了一下,但this walkthrough看起來是一個很好的參考,它提到了VSSConverter這個工具,它應該可以幫助您儘可能輕鬆地完成遷移。

我想推薦一件事:備份。在做這件事之前備份所有東西。如果出現任何問題,最好安全,而不是抱歉。

我的鏈接沒有顯示出來。這是地址:http://msdn.microsoft.com/en-us/library/ms181247(VS.80).aspx

+0

遷移到TFS2010過程在http://msdn.microsoft.com/en-us/library/ms253060.aspx – benophobia 2010-08-07 09:59:08

11

有幾種不同的方法可以遷移。該工具會拉你的歷史記錄等結束了,但更加務實和簡單的方法就是鎖定VSS爲歷史存檔和新鮮的開始:

  1. 讓每個人都檢查所有變爲VSS,確保一切建立,等
  2. 將所有VSS數據庫,以「鎖定」(對所有用戶只讀權限)
  3. 獲取最新的整個VSS數據庫變成「乾淨」的文件夾集的工作站上
  4. 檢查所有的文件從工作站轉換爲TFS

對於轉換之前的任何歷史記錄,人們需要轉到VSS,但是在一兩週後,它實際上不太可能經常發生。而且您知道VSS中的歷史記錄是準確的並且不會被轉換過程破壞。

8

請注意,TFS不支持在不同項目之間共享文件,就像VSS一樣。如果您有任何這樣的共享文件,它們之間的鏈接將在遷移過程中被破壞,從而導致每個項目中最初相同但現在不同的文件。對TFS中這些文件之一的更新將不再傳播到其他項目中的副本。

+0

詳述真的錯過了這一壯舉。 :( – 2013-10-01 02:58:05

2

我們目前正在做我的日常工作。我們實際上正在大約一個月內完成切換。我是遷移的主要部分,也是我們爲什麼要脫離SourceSafe的重要組成部分。爲了幫助遷移,我使用了Visual Studio® Team System 2008 Team Foundation Server and Team Suite VPC Image。這非常有用。就在蝙蝠身上,圖像包含一個完整的TFS安裝,供您玩和演示。它還包括Hands on Labs,其中一個實驗室正在運行VSS - > TFS遷移工具。如果您有MSDN訂閱,一旦您使用了該映像,下一步就是安裝您的訂閱附帶的TFS小團隊版本。

需要注意的一件事是確保獲取Visual Studio 2008的最新Service Pack以及映像上安裝的.NET Framework。該服務包修復了一些煩人的錯誤,並明確提高了系統的可用性。我們有一個非常大的SourceSafe數據庫,大約有90多個項目,遷移工具大約需要32個小時才能完成。首先,我對我們的sourcesafe數據庫進行了備份以進行測試。然後我在測試sourcesafe數據庫上進行遷移。之後,我檢查了TFS中的源代碼樹,並且一切正常。我們保留了來自VSS的源文件的所有歷史,這非常棒。我們上線後不需要保留那個發臭的VSS數據庫。

我們正在逐步進行遷移。首先是源代碼控制,讓我們的開發人員使用它。之後,我們將把QA和業務分析師遷移到使用工作項目跟蹤功能。

我的建議是逐步進行遷移。不要一次做太多。爲將要使用該系統的人員提供時間進行培訓。

1

從我以前的同事Guy Starbuck那裏得到了很好的指導。還有一件事要用這種方法來補充 - 你可能會隨着時間的推移決定重構應用程序的組織方式(文件夾等),這會給你一個機會來做到這一點。

我一直處於無意識地組織解決方案(更不用說應用程序發生重大變化)的情況下,這導致了對組織方式有不同要求的渴望 - 從VSS到TFS的轉變是一個非常棒的機會所以。

至於原題:

和:這個遷移將肯定意味着我們的工作習慣必須以某種方式修改。你認爲這種變化可能是該組織的問題嗎?想想一組20個.net開發者,在一個單一的網站

我會說 - 是的,你的工作習慣會改變,但更多的更好。

  1. 你不應該使用「簽出」鎖和「取得最新簽出」。
  2. 您現在可以有效地分支和合並
  3. 您現在將具有「更改集」,同時簽入的所有文件將被組合在一起。這使得歷史更改跟蹤變得更容易 - 但更重要的是 - 回滾更容易(即同時查找所有文件並將其回滾)
  4. 將簽入與工作項目相關聯。不要忽視工作項目!您可以犯的最大錯誤是僅將TFS用作VSS替代品。構建和項目管理功能非常出色 - 您爲它們付費 - 使用它們!

至於你的經驗將如何改變的細節,礦山(和團隊系統MVP)的另一位前同事史蒂夫聖讓寫上的差異詳細的文章:From VSS to TFS

6

如果你選擇使用Visual Studio Team Foundation Server附帶的VSSConverter.exe工具,那麼您應該首先安裝TFS 2008 SP1,因爲它包含許多改進,詳情如下:on this blog by the migration tools team

一些 版本的主要功能包括:

命名空間的衝突消除。我之前在博客的博客中將此作爲「 重命名問題」,我們修復了 轉換器以正確遷移具有重疊名稱空間的文件 。這是 對於大多數用戶 試圖使用以前版本的 工具的最大痛點。

自動解決方案重新綁定。 在這個最新版本中,VS解決方案 文件將自動升級到 到9.0版本並在 中檢查到版本控制。以前用戶 需要手動完成此操作。

更正時間戳 不一致性。使用客戶端的 時間戳通過VSS可以導致被記錄在 相反的順序 修訂,他們其實 發生在該工具現在可以識別 這個問題,並繼續遷移 變化的地方原先 會失敗。

改進的日誌記錄。雖然 我們已經修復了很多問題,提供了更好的 ,更詳細的日誌記錄將幫助遇到問題的用戶 診斷問題。

2

VSS Converter是一個非常完美的解決方案。 2005年和2008SP1版本的轉換器之間存在顯着差異。

例如,在長期使用的VSS DB中,會有大量用戶參與VSS。其中許多用戶很早以前就會離開該組織,因此將不再擁有域帳戶。 TFS要求將VSS用戶映射到域帳戶,因此您必須決定將舊用戶映射到單個「虛擬」域帳戶還是映射到當前團隊成員。

此外,VSS Converter 2008要求這些域帳戶是有效的TFS帳戶。而2005轉換器不強制執行此操作。

如果您的VSS歷史包含重要的文件夾移動,那麼很可能您在此移動之前將放棄所有歷史記錄。例如,如果您將文件夾移動到新位置,然後刪除上一個父文件夾,則會丟失所有歷史記錄。看到這篇文章的更多解釋: http://msdn.microsoft.com/en-us/library/ms253166.aspx

在我參與的一個遷移,我們有一個10歲的VSS數據庫,在6個月前失去了所有的歷史。這是由於6個月前發生的重大整頓所致。

2

TFS conversion tool < - 使用此

我用這個工具,有些時候已經,結果是相當satisfatory因爲它與變更集從SourceSafe的歷史,如果你的願望了。

無論如何,使用這個工具你應該一直注意日誌中的錯誤和警告,並檢查一切構建好還是傳遞好。

建議在運行之前運行SS分析。

希望它可以幫助

相關問題