8

我们使用 TFS 源代码控制并有两个构建控制器(一个 VS2010 另一个 VS2012)。我们使用默认的构建工作流模板栏进行了一些自定义更改。

由于我们有很多分支,我们将如何根据所需的分支更改工作空间?

我正在考虑为分支 ( $\oursourcecontrol\branches\main) 添加一个参数,然后将其作为变量传递到工作流的获取工作区部分。

或者有更好的方法吗?

4

2 回答 2

9

你目前不能,这真的很遗憾。它将完全破坏触发器对 CI 和 Gates 签入的支持。您可以使用TFS 社区构建管理器快速克隆和调整构建定义以支持多个分支。

您可以做的是获取比您需要的更多的信息(例如$/Sourcecontrol/Branches/*),然后在任何路径参数(如构建解决方案、测试设置文件等)上使用字符串替换来将它们全部指向正确的解决方案。您可能需要做一些模板,{BRANCH}以便您可以轻松地替换这些标记。

Git 构建模板在 Git 存储库上确实支持此功能,但您需要 TFS 2013 才能使用服务器端 Git 支持。

于 2014-05-29T11:11:14.137 回答
-1

我在包含 TFS 分支的更高级别的存储库选项卡中映射了服务器路径。隐藏获取源步骤不需要的其余分支,除了要构建的分支。并创建变量以传递分支名称,在排队时检查允许。在构建步骤中使用此分支变量以使构建定义适用于所有分支。根据 TFS 中的分支结构,您可能需要多个变量。

于 2017-04-14T19:40:32.970 回答