TFS构建,一个用于许多分支的构建

时间:2014-05-29 10:59:58

标签: tfs msbuild tfsbuild team-build tfvc

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

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

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

或者有更好的方法吗?

2 个答案:

答案 0 :(得分:8)

你现在不能,这真的是一种耻辱。它将彻底打破对CI和盖茨签到的Trigger支持。您可以使用TFS Community Build Manager快速克隆和调整构建定义以支持多个分支。

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

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

答案 1 :(得分:-1)

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