【问题标题】:Teamcity fails to merge automaticallyTeamcity 无法自动合并
【发布时间】:2015-08-04 22:42:50
【问题描述】:

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

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

所需的行为是在构建成功时从 ma​​ster 到 dev 运行自动合并。

所以我添加了一个 自动合并 构建功能作为指定 here 具有以下设置:

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

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

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

【问题讨论】:

    标签: git github merge teamcity teamcity-9.0


    【解决方案1】:

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

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

    我就是这样解决的。

    【讨论】:

    • 您是否必须添加任何代理要求或类似内容?我有类似的设置,但我不断收到一条消息,说没有兼容的代理,尽管事实上我有 3 个代理被列为与该特定工作兼容。
    【解决方案2】:

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

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

    【讨论】:

    • 不幸的是,没有。 Teamcity 自动执行本地合并,然后将提交推送到 github——这已经被证明,因为我昨天晚上终于找到了一个专门的集成项目的解决方案。
    猜你喜欢
    • 1970-01-01
    • 2016-07-14
    • 2015-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-11
    相关资源
    最近更新 更多