【问题标题】:Select Git branch for TeamCity Build为 TeamCity 构建选择 Git 分支
【发布时间】:2014-06-18 09:41:38
【问题描述】:

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

我的 VCS 根 (Git) 设置为默认值:“master”和分支规范是

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

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

我想做的是针对“开发”分支创建计划的 QA 构建/部署。我看到如果我单击运行按钮旁边的省略号,我可以选择“更改”选项卡上的分支,但我无法确定如何使这个“坚持”。这是可能的,还是我做错了?

谢谢,

乔

【问题讨论】:

    标签: git teamcity teamcity-8.0


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      根据@biswajit-86 的反馈和我在谷歌搜索时发现的一些其他信息,我能够让它工作。这就是我所做的(图像重,抱歉)。它基于 Team City 8.2,其设置似乎与我遇到的示例略有不同。

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

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

      3) 基于模板创建一个新版本。正如您在此处看到的,在步骤 1 中创建的 %BrachName% 参数可用。

      4) 如果您稍后需要更改,请点击此处

      差不多就是这样。对于我的 CI 构建,我将分支名称留空,因此签入的任何分支都会触发 MSBuild 步骤。对于我的 QA 构建,我传递了“开发”,如此处所示,并且我每天都会进行此设置。我也有一个“发布”构建设置,但根据我们的命名约定,我似乎需要更新构建以指向每个发布的特定分支。

      【讨论】:

      • Teamcity 应该有这种功能......可惜它没有......对于颠覆我们可以通过结帐规则来控制......但这里没有......
      • 为什么我必须在 SO 中挖掘才能找到它?它应该可以在官方 TC 手册中找到。非常感谢。
      • 在 9.1.5 版本中,我必须在每个构建配置中手动定义一个 %BranchName% 参数。我还必须使用该参数为每个配置指定一个唯一的检出目录。 (后一个问题可能是由于我们设置的特殊性造成的。)除此之外,一切都非常简单并且工作正常。
      猜你喜欢
      • 2016-04-04
      • 1970-01-01
      • 2014-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多