11

鉴于有masterdev git 分支,git 存储库托管在作为 CI 服务器安装的 Github 和 TeamCity 9.0.1 上。

teamcity 构建项目配置为使用 github 存储库作为 VCS 根目录,并将refs/heads/master设置为默认分支。

所需的行为是在构建成功时运行从masterdev的自动合并。

因此,我使用以下设置添加了此处指定的自动合并构建功能:

  • 观察分支中的构建 => 分支过滤器:+:master
  • 合并到分支:dev
  • 合并提交消息:TEAMCITY: Automatic merge branch master into dev
  • 在以下情况下执行合并:build is successful
  • 合并策略:use fast-forward merge if possible

按下运行后 - 构建是绿色的,构建日志中没有显示任何错误,但完全没有按需要合并!

出了什么问题,在哪里可以找到有关构建功能执行的调试信息?

4

2 回答 2

4

我真正需要的是创建一个专门的 teamcity 项目(称为Integration),它首先处理masterdev分支中的提交。它是通过配置一个 VCS Root for Integration项目来实现的,该项目refs/heads/dev指定为默认分支并+:refs/heads/master分支规范部分中指定。

该项目具有自动合并构建功能,其配置类似于问题中指定的设置(分支过滤器:+:refs/heads/master,合并到分支<default>)。

这就是我解决它的方式。

于 2015-05-10T10:53:39.180 回答
-2

您需要编写一个脚本来将更改推送到 GitHub 存储库。我不知道为此存在一个插件,但如果你找到一个插件,我当然不会感到惊讶。

合并发生在构建服务器上的存储库上,然后如果没有冲突,则使用指定的提交消息提交。这需要与您的 GitHub 存储库同步。

于 2015-05-10T10:44:10.857 回答