当我尝试调用命令行来获取我的TFS映射文件夹的最新更新
时 TF get /recursive
从Windows 7的run
窗口成功完成呼叫。
但是,当我将调用放入.bat文件并在构建定义(guide中)通过InvokeProcess
运行它时,它就失败了。
信息如下。
无法确定工作区。您可以通过以下方式纠正此问题 运行'tf workspaces / collection:TeamProjectCollectionUrl'
会发生什么?我怎么能解决这个问题?
答案 0 :(得分:1)
发生这种情况的原因是,当您在本地运行命令时,您正在下载的文件夹将映射到工作区。在构建中执行命令时,它在构建服务帐户下运行, 没有为您指定的文件夹映射工作区。
您不需要在构建过程中使用tf get
命令。配置构建时,可以在“源设置”选项卡上指定应在工作区中映射的文件夹。构建过程将处理确保您在工作区中映射的文件夹的内容自动出现。
答案 1 :(得分:0)
我的问题的原因是构建代理在不同的Windows帐户下执行我的.bat文件,类似于NTSERVICE
;当我直接运行它时,使用了我的TFS登录帐户(以前在Windows 7 Credential Manager中记住)
因此,解决方案是将登录名和密码设置为TF get /login:SomeTFSUsername,SomePassword
(请参阅更多here)