0

我是在 TFS 2010 上构建的新手。

我有 4 个 C# 解决方案。其中一个解决方案依赖于其他 3 个“帮助解决方案”中的每一个生成的程序集。

我想创建一个构建定义,它将构建我的 3 个辅助解决方案,然后构建顶级解决方案。

在构建定义对话框中,我尝试将 4 个解决方案文件中的每一个添加到工作区选项卡,构建代理文件夹为 $(SourceDir) - 但我收到错误对话框“TF215040:路径 $(SourceDir) 只能是在给定的工作空间中映射一次”。因此,我将帮助解决方案的映射更改为它们各自的构建定义使用的构建文件夹。

在 Process 选项卡的 Items to Build 属性下,我为 4 个解决方案中的每一个添加了解决方案文件,最后列出了父解决方案。

当我将顶级构建定义排队时,我收到错误消息:“路径 C:\Builds\3\x.Int.Common\x.Int.Common\Sources 已映射到工作区 xBLD01。”

注意:当我运行“tf.exe workspaces /owner:*”时,我注意到我的工作区被多次列出,拥有不同的所有者,但计算机名称也相同。我猜这是因为团队中有 3 个使用相同的 VM 映像——他们没有连接到域。也许这是问题的原因?

有人可以提出解决方案吗?

谢谢

抢。

4

1 回答 1

2

只需在工作区映射中映射包含其下所有 4 个解决方案的根文件夹即可。例如,如果您的文件夹结构如下所示:

C:\MyProject\Solution1\1.sln

C:\MyProject\Solution2\2.sln

...

只需映射 C:\MyProject\ -> $(SourceDir)

如果您的构建服务器上的工作区映射搞砸了,您可以下载TFS SideKicks工具以删除构建服务器上的所有工作区,并且 TFS 构建将在您下次运行时重新创建正确的工作区。

于 2012-07-13T16:04:25.210 回答