如何合并竹子构建中的拉取请求

时间:2017-02-09 20:38:22

标签: git merge continuous-integration bamboo

我在互联网上看到“如何通过拉动请求触发竹子构建”,但我想做相反的事情。

现在,我们有一个由大约十人组成的团队从他们自己的分支处理git存储库,每个分支都有自己的分支用于每个任务。当开发人员完成对其功能的测试时,他们会从其功能分支到上游主服务器创建拉取请求。有人必须经常告诉开发人员重新绑定,以便可以合并拉取请求。我的团队正在尝试简化我们的git工作流程,我们基本上想要一个通过执行以下操作来自动化该过程的构建:

  • 将原点/功能分支重新定位到origin / master
  • 如果rebase导致冲突,则快速失败构建并通知人们手动变基
  • 如果rebase成功,对重新分支的分支进行'测试'竹子构建以仔细检查rebase没有破坏任何测试
  • 如果测试版本是红色的,快速失败构建并通知人们从源版本中拉出他们的重新分支并修复损坏的测试
  • 如果测试版本仍为绿色,请合并PR并将构建显示为成功。
  • 下一个队列中的构建可以开始

这样我们就可以将全局合并构建的队列用作合并队列,并且开发人员可以自己管理它,而不需要关于变基的所有来回消息传递,而某些人基本上充当此过程的服务器。

这需要Bamboo能够合并拉取请求所以我的问题是:是否有直接集成允许我这样做?如果没有,那么如何通过脚本合并拉取请求?一个示例/详细解释会有所帮助。

1 个答案:

答案 0 :(得分:3)

使用货叉的任何特殊原因?我相信与叉子相比,竹子与树枝更相容。如果您使用分支机构,可以使用以下一些很酷的功能:

Bamboo提供了将主代码自动合并到分支中的功能。请参阅以下摘录https://confluence.atlassian.com/bamboo/using-plan-branches-289276872.html并在主题自动分支合并

如果您选择自动化分支合并,则Bamboo提供2种合并模型:

Branch Updater — a branch repo is kept up-to-date with changes to master.
Gatekeeper — the default repo is only updated with changes in the branch that have built successfully.

如果需要,可以在单个计划分支中覆盖主计划的自动分支合并策略。

此外,您可以在计划分支上配置触发器,从而始终在每次提交时构建计划分支。