scripting - 无法使用 TF.exe 确定工作区

标签 scripting tfs tfsbuild workspace

我有这个脚本(bat文件)

tf workspaces /s:http://project02:8080

tf workspace /s:http://project02:8080 Team.descomp;MyDomain\Myuser


tf workfold /workspace:Team.descomp


tf get $/Team/Main/Projects /recursive /force /noprompt

我收到此错误:无法确定工作区。,当我尝试执行 tf get 时。

控制台输出类似于:

Server: project02

Workspace: DESCOMP

Owner : MyUser

Computer : DESCOMP

Workspace: Team.descomp

Owner : MyUser

Computer : DESCOMP

...

Workspace: Team.descomp (MyUser)

Server : http://project02:8080/

$/Team: C:\Temp\Team2

...

Unable to determine the workspace.



注意,对于 $/Team(团队项目)在两台机器上有 map :MyUser 和 Descomp

Workspace: Team Owner : MyUser Computer : MyUser

Workspace: Team.descomp Owner : MyUser Computer : DESCOMP



有什么建议?

最佳答案

来自论坛 MSDN:霍夫曼先生

http://social.msdn.microsoft.com/Forums/en/tfsbuild/thread/82b13bfd-5fd7-45f7-a681-d84c9ea52765

将 tf get 的工作文件夹更改为工作区映射的文件夹。

从映射工作区的文件夹执行命令

(例如,如果您从控制台执行此操作:

cd c:\sources\myteamproject

tf get ...

)

关键:将 tf get 的工作文件夹更改为工作区映射的文件夹。

我使用命令 推送 C:\Temp\Team2 在我的脚本文件中。

更新 : 瑞恩克伦威尔的评论

您可以使用以下内容在脚本中创建和映射工作区。第二个命令有效,因为第一个工作区是在“blah”文件夹中创建的。这 '。'在第二个命令中说将“$/”映射到当前目录(等等)。如果您愿意,您可以将其更改为命名文件夹或子文件夹。

创建新工作区 C:\projects\blah>tf workspace /new blah /noprompt /collection:http://<host>:<port>/tfs/<collection> /login:<username>,<pwd>
映射该工作区中的路径 C:\projects\blah>tf workfold /map $/ . /login:<username>,<pwd>

关于scripting - 无法使用 TF.exe 确定工作区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4863865/

相关文章:

tfs - 如何在 TFS 中创建组成员身份?

c# - TFS Fakes 构建单元测试失败

引用 SSDT 项目的 WiX 项目无法在 TFSBuild 中构建 - 未定义的预处理器变量 '$(var.DatabaseProject.TargetDir)'

python - 如何将 ffmpeg complex_filter 转换为 ffmpeg-python

linux shell 日期问题

git - 在 Windows 中编写 Git 命令脚本

tfs - VS30063 : You are not authorized to access

visual-studio - 使用 Visual Studio 的哪个端口连接到 TFS 服务器?

git - 构建代理的分支策略豁免不起作用

scripting - F# 以编程方式运行 .fsx 脚本文件