2010-09-13 33 views
0

我最近的任務是爲我們的項目創建一個分支計劃,其中一部分涉及創建一些功能分支和發佈分支。我還必須清理源代碼管理樹,以便可以自行包含分支。我基本上開始使用此:如果文件夾層次結構發生變化,如何從特定變更集創建分支?

/ 
    ./src 
    ./model 
    ./processtemplates 
    ./data 
    ./otherfolders 

我改變了結構,這樣的:

/ 
    ./trunk 
    ./src 
    ./model 
    ./data 
    ./branches 
    ./v1 
     ./release1 
     ./src 
     ./model 
     ./data 
     ./release2 

的問題是,我需要從一個特定的先前版本創建一個分支,但該文件夾結構發生了變化,所以我無法獲得/ trunk文件夾的變更集以從中創建分支。我得到的確切錯誤消息是:「在指定版本中沒有在$ /中找到匹配的項目。」

這樣做的最好方法是什麼?我儘管從最新的變更集中創建了一個分支,並將所有的變更還原回了舊的變更集。我希望有一個更簡單的方法。

回答

1

重命名和刪除在TFS 2008中是危險的領域。您可能不得不去命令行來執行此操作。看看你的歷史記錄,以找出您要從分支的變更,然後做在命令行中執行以下操作:

mkdir c:\BranchFolder 
cd c:\BranchFolder 
tf.exe workspace /new /s:http://tfs:8080 BranchWorkspace 
tf.exe workfold /map:"$/","C:\BranchFolder" 
tf.exe branch "$/" "$/branches/v999" /version:Cxxxxxx /noget /noprompt 

驗證和檢查

tf.exe workspace /delete BranchWorkspace 

替換爲v999什麼您想要分支到的文件夾,並將xxxxxx更改爲適當的更改集編號。

由於always--當你在這些類型的區域,你都搞不清什麼結果將是,在檢查前,檢查你的工作的工作。

+0

感謝您的答覆,但不幸的是我仍然有同樣的問題。我想要的變更集中不存在/ trunk文件夾。 – 2010-09-15 17:02:44

+0

它不應該需要。你可能需要做的是將版本號附加到「$ /」的末尾(比如「$ /; xxxxxx」),這將告訴它使用特定版本的版本作爲起點。 – Robaticus 2010-09-15 17:05:30

相關問題