在成功构建Jenkins之后,如何将更改从一个分支推送到另一个分支?

时间:2014-09-05 06:19:57

标签: git github jenkins

在成功构建Jenkins之后,如何将更改从一个分支推送到另一个分支?假设我有一个名为" beta"我承诺和另一个名为" master"我希望包含所有成功的beta提交。

1 个答案:

答案 0 :(得分:4)

从底部链接提供的Jenkins插件的高级功能部分:

  

设置Jenkins项目,然后离开'分支' Git中的字段   SCM空白。这将导致Jenkins考虑任何变化   建筑分支。

     

接下来,选择一个特定的分支名称作为集成目标   '高级'部分 - (例如' master'或' stable'),并选择'合并   在构建之前'。

     

选择'将GIT标签推回原始存储库'从后期制作   操作(这是使用。更新集中式git仓库所必需的   构建的结果)。

     

现在,开发人员不应该直接提交您的集成   分支(' master'或' stable')。相反,他们应该使用   功能分支,或在提交时创建新的远程分支(例如:" git   push origin HEAD:refs / heads / myNewFeature")。你也可以设置你的   GIT存储库只接受来自集成分支的提交   詹金斯。

     

你已经完成了。提交现在应该自动与合并   集成分支(如果它们没有干净地合并,它们将会失败),以及   建成。如果构建成功,则将推送合并的结果   回到远程git仓库。

基于我对插件的经验做了一些阐述:

  1. 我选择创建一个名为" beta"在我的原始存储库中。另外,我决定在更新此分支时只想构建,所以我将"分支设置为#34;字段到" * / beta"。

  2. 我必须"添加其他行为" "在构建之前合并" - 它并不只是坐在那里供我选择。我这个部分的存储库名称是" origin"和要合并的分支是" master"。

  3. 我还选择了" Git Publisher"的后期制作动作。为此我检查了"仅推送构建成功"和"合并结果"的方框。我还写了#34; master"在分公司推箱子"起源"在目标远程名称中。

  4. https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin