2011-05-12 64 views
0

我正在尝试创建一个将功能分支移动到归档区域的脚本。该脚本是这样的:如何创建移动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 

我得到在进行移动以下错误:

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

如何才能做到这一点?

解决方案:

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

是否还有用户映射? – PVitt 2011-05-13 07:34:12

回答

0

您不能重命名有工作分配给它的文件夹映射的文件夹。也就是说,如果你有从$/A到C:\ A的映射,你不能重命名$/A。相反,取消映射$/A并为其父$ /创建映射,然后可以将$/A重命名为$/B。