2011-10-24 16 views
4

我想使用tfpt將shelveset從源分支遷移到目標分支,但它似乎沒有做任何事情...不是我所期望的更多...但任何人都知道什麼是錯的?我正確地按照指示我想......tfpt遷移爲TFS不會做任何事

我有:

tfpt unshelve "DbMigrations" /migrate /source:$/TeamProject/Main /target:$/TeamProject/Releases/7.20 

回答

4

會發生什麼事,你運行該命令後?您需要在遷移之前已經設置了幾件事情:

  • 涵蓋的源和目標分支都工作空間。
  • 您需要在源文件夾內運行該命令。

運行該命令後,應該要求您將原始貨架集的更改合併到目標分支中,並解決任何衝突,最終將客戶端上的變更集掛起。除非您將變更集檢入TFS本身,否則服務器上沒有任何內容。

+1

您的觀點 - 是的,我已經完成了這兩個。當提示出現合併我的更改時,它顯示文件夾路徑中的主分支,而不是發佈分支。如果我解決了所有衝突,我會看到主分支的待定更改,而不是分支。 – Jeff

+4

只是一個快速的評論,我有同樣的事情發生在我身上(更改未保存到/源),直到我在/源參數中修復了我的愚蠢輸入錯誤。該實用程序並沒有告訴它它無法找到指定的路徑,它只是不支持它的來源。 –

+0

同樣發生在我身上。我有一個空格的路徑,需要在源/目標周圍包含引號,如下所示:'/ target:「$ \ Has Spaces \ Somewhere」'。 – Ocelot20

1

我遇到了同樣的問題,我無法通過指定shelveset名稱來實現它。但是,我發現如果您完全刪除擱架組的名稱,TFS將彈出一個窗口,其中包含可供選擇的擱架組選擇列表。按照常規選擇所需的shelveset並執行所有其他合併操作。

例如:C:[映射的工作空間目標路徑]> TFPT取消擱置/遷移/源: 「$/SOURCEPATH」/目標: 「$/TARGETPATH」

0

您需要使用TFS服務器上的分支路徑,而不是你的本地機器。要找到路徑,請在Visual Studio中轉到源代碼管理資源管理器,右鍵單擊分支,高級>屬性,並且需要分支名稱,而不是本地路徑。如果路徑中有空格,請用雙引號將其包裝。