为TeamCity Build选择Git分支

时间:2014-05-01 20:07:04

标签: git teamcity teamcity-8.0

我想知道如何使用Team City 8.1选择要构建的分支。

我的VCS root(Git)设置为Default:" master"和分支规范是

+:refs/heads/develop
+:refs/heads/feature/*
+:refs/heads/hotfix/*
+:refs/heads/master
+:refs/heads/release/*

我有一个CI构建设置,可以自动构建已签入的任何内容,这正是我想要的。

我想做的是针对"开发"创建预定的QA构建/部署。科。我看到如果单击运行按钮旁边的省略号,我可以选择"更改"标签,但我无法确定如何制作这个"坚持"。这是可能的,还是我错了?

谢谢,

2 个答案:

答案 0 :(得分:92)

基于@ biswajit-86的反馈以及我在谷歌上搜索时发现的其他一些信息,我能够让它发挥作用。这就是我所做的(形象沉重,对不起)。它基于Team City 8.2,它的设置与我遇到的例子略有不同。

1)设置VCS根目录。这里的关键是%BranchName%参数。

enter image description here

2)创建一个Build模板并使用刚刚创建的VCS root。我还添加了一个MSBuild步骤,因为我的所有构建都需要运行它。

enter image description here

3)基于模板创建新构建。如您所见,可以使用在步骤1中创建的%BrachName%参数。

enter image description here

4)如果你以后需要更改,可以在这里找到

enter image description here

这就是它。对于我的CI构建,我将分支名称留空,因此任何已签入的分支都会触发MSBuild步骤。对于我的QA构建,我传入“开发”,如此处所示,我按日程安排。我还有一个“发布”版本设置,但根据我们的命名约定,我看起来需要更新构建以指向每个版本的特定分支。

答案 1 :(得分:6)

您可以参数化git VCS设置的“参考名称”。这意味着您在构建中声明了%variable.name%形式的变量,在“configuration parameter:”类别下创建构建参数。

对于每个构建目标设置此值,您应该能够选择要为其运行目标的特定分支。