2010-12-02 95 views
1

有誰知道如何將一個項目從一個TFS服務器導出/傳輸到另一個?將項目從TFS2005移到TFS 2008

我有兩個TFS服務器在工作,舊的(演示1)開始作爲一個演示的東西,然後留在太多的使用,而新的服務器:TFS1。

所有這些都是在我的時間之前完成的,而我只是需要處理這些問題。

大多數項目不需要他們的歷史/分支信息。但有一個。 不幸的是,很久以前就決定將所有項目(除了這個大型項目之外的所有項目都沒有歷史記錄,只是一個直接的副本)。

這意味着TFS1現在在一些小型項目上擁有自己的歷史,demo1僅用於大型項目。

我們現在要移動的這個項目和它的所有的歷史,(分公司不太重要,因爲我們可以採取發佈代碼的直副本)

有誰知道如何導出/從一個傳輸單個項目TFS服務器到另一個? 有沒有可以做這種事情的工具?

回答

1

您應該首先看看codeplex上的TFS Integration Platform。這曾經是TFS到TFS遷移工具。您可能需要修改該工具才能獲取歷史記錄。我們已經使用它已經有一段時間了,但修改起來非常簡單。

或者,您可以自己編寫這個特定用途的工具。

您需要做的是多次遷移,所有遷移都基於該項目的變更集。基本邏輯將是:

  • 同時連接到TFS服務器
  • 獲取從舊TFS服務器的最古老的代碼。
  • 將它複製到映射新的TFS服務器
  • 檢查在工作文件夾
  • LOOP:
    • 獲取下變更
    • 迭代通過在變更
    • 小彭編輯其中的文件在新的工作文件夾中
    • 複製更改
    • 請使用與舊更改集相同的備註簽入

誰在是不會被保存檢查東西的人的ID,也沒有任何相關的工作項目,但你有你的大部分變化。

您將不得不處理(或在某些情況下忽略)特殊簽入情況(例如添加,刪除,重命名,分支和合並),但這應該很容易。

+0

我結束了使用TFS集成,開始源代碼和黑客它來處理提出的多個問題。明白了,只花了3周! – 2011-07-11 06:28:54

0

幾年前,我經歷了這個過程,我們發現了幾個不支持的工具來實現這一功能,但我嘗試的這兩種工具都很糟糕,並且沒有很好地將項目移交。我們最終只是手動將活動項目移植到新服務器,並保留舊服務器僅用於歷史記錄。