2011-05-12 5 views
0

J'essaie de créer un script qui va déplacer une branche de fonctionnalité vers une zone d'archive. Le script ressemble à ceci:Comment créer un script qui déplace une branche tfs?

mkdir C:\TempWorkspace 
pushd C:\TempWorkspace 

tf workspace /new /noprompt /s:http://rdsw02fdkserv:8080/tfs MoveToArchive 
tf workfold /unmap $/ /workspace:MoveToArchive /s:http://rdsw02fdkserv:8080/tfs 

tf workfold /map "$/Fusion Server/Development/%1" C:\TempWorkspace\%1 /workspace:MoveToArchive /s:http://rdsw02fdkserv:8080/tfs 
tf workfold /map "$/Fusion Server/Development/Archive" C:\TempWorkspace\Archive /workspace:MoveToArchive /s:http://rdsw02fdkserv:8080/tfs 

tf move "$/Fusion Server/Development/%1" "$/Fusion Server/Development/Archive/%1" 

tf checkin /comment:"Move %1 to archive" 

tf workfold /unmap "$/Fusion Server/Development/%1" /workspace:MoveToArchive /s:http://rdsw02fdkserv:8080/tfs 
tf workfold /unmap "$/Fusion Server/Development/Archive" /workspace:MoveToArchive /s:http://rdsw02fdkserv:8080/tfs 
tf workspace /delete /noprompt MoveToArchive /s:http://rdsw02fdkserv:8080/tfs 

popd 
del C:\TempWorkspace /q /f 

Je reçois l'erreur suivante lorsque le déplacement est effectué:

TF14097: Cannot rename $/Fusion Server/Development/B-01560 when it has a working folder mapping assigned to it.

Comment cela peut-il être fait?

Solution:

mkdir C:\TempWorkspace 
pushd C:\TempWorkspace 

tf workspace /new /noprompt /s:http://rdsw02fdkserv:8080/tfs MoveToArchive 
tf workfold /unmap $/ /workspace:MoveToArchive /s:http://rdsw02fdkserv:8080/tfs 

tf workfold /map "$/Fusion Server/Development/" C:\TempWorkspace\ /workspace:MoveToArchive /s:http://rdsw02fdkserv:8080/tfs 

tf get . 

tf move "$/Fusion Server/Development/%1" "$/Fusion Server/Development/Archive/%1" 

tf checkin /comment:"Move %1 to archive" 

tf workfold /unmap "$/Fusion Server/Development" /workspace:MoveToArchive /s:http://rdsw02fdkserv:8080/tfs 

tf workspace /delete /noprompt MoveToArchive /s:http://rdsw02fdkserv:8080/tfs 

popd 
del C:\TempWorkspace /q /f 
+0

Existe-t-il des mappages utilisateur? – PVitt

Répondre

0

Vous ne pouvez pas renommer un dossier qui a des dossiers de travail applications qui lui sont assignées. Par exemple, si vous avez un mappage de $/A vers C: \ A, vous ne pouvez pas renommer $/A. Au lieu de cela, démapper $/A et créer un mappage pour son parent $ /, vous pouvez renommer $/A en $/B.

Questions connexes