【问题标题】:Gerrit + Jenkins格里特+詹金斯
【发布时间】:2015-07-18 07:16:29
【问题描述】:

我使用 jenkins + gerrit。

如果我提交并推送一些更改并且构建失败,我会看到并修复它。当我修复它,然后提交并推送时,我看到“提交,合并挂起”。

【问题讨论】:

    标签: testing jenkins build gerrit


    【解决方案1】:

    挂起的合并意味着两件事之一。

    1) 有两个提交,您试图以错误的顺序合并它们。如果是这样,后一个合并将等到前一个合并被请求。

    2) 您已经拒绝了前一个合并,而后者正在等待您取消拒绝并合并。由于您可能不会这样做,因此实际上此提交将永远不会被合并。

    一些解决方法

    1) 如果您有一个应该被拒绝的合并,请重新提交并进行适当的修复。这意味着您 --amend 您之前的提交并再次推送。这样做会导致 gerrit “重做”提交,因为它具有相同的 Change-Id。

    2) 捕获提交,并在干净拉取时重新提交。这样可以确保下次推送新提交时,它将直接附加到预期分支的当前头部。由于没有什么可等待的,合并将顺利进行。

    存在其他解决方案;但是,它们变得有点复杂(即使从概念上讲它们不是骇人听闻的解决方法)。我发现在探索它们之前获得更多考虑合并和历史链的经验会更容易。

    【讨论】:

      【解决方案2】:

      Merge pending 通常意味着更改的父级未提交。

      【讨论】:

      • 是的,你是对的。但是,如果某些更改因为 build-NOT-Ok 而被放弃,我会修复代码并再次推送。我在 WebUI 中看到消息“已提交,合并挂起”。但是,如果我从 WebUI 输入提交,则此提交没有合并冲突。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-27
      • 2018-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多