【问题标题】:How to promote a Gerrit draft submission to a regular code-review submission如何将 Gerrit 草稿提交提升为常规代码审查提交
【发布时间】:2018-08-22 19:06:12
【问题描述】:

一位同事给我发了一份 Gerrrit 代码审查“草稿”(我想是通过“refs/drafts/master”而不是“refs/for/master”),然后就去度假了。如果不下载补丁并自己提交,我如何将他的草稿提升为完整的常规代码审查,以便我可以批准并提交以进行合并?

我认为this is a similar question,但它是用于 git-review,而不是 Gerrit。如果可能的话,我也有兴趣从 Gerrit Web GUI 中进行操作。而且我没有在我的 Gerrit Web GUI 上看到那个草稿的“发布”按钮。 (而且目前它并没有说任何关于合并冲突的事情,只要我快点......)

如果我单击 GUI 右上角的“Patch Sets”链接,我会看到以下内容:

在左上方显示“更改 58358 - 草稿”,在窗口中间显示:

【问题讨论】:

    标签: gerrit


    【解决方案1】:

    只有变更所有者才能发布草稿补丁集。使用其他答案中描述的 UI 的樱桃选择选项将不起作用,因为樱桃选择实现保留了新更改或补丁集的草稿状态。

    据我所知,强制更改为NEW 状态的唯一方法是手动下载提交并使用refs/for/master 而不是refs/drafts/master 推送新补丁集。

    请注意,如果您没有同时将更改重新设置到新的父级,您可能需要稍微编辑提交消息以使 gerrit 接受它。否则它将以no new changes 拒绝。

    【讨论】:

      【解决方案2】:

      如果您的同事将您添加为审阅者,您可以。你可以挑选这个提交。

      点击右上角的下载链接,上面的命令有别名。 但是当您更新您的问题时,您不想签出并手动推送或樱桃挑选到主分支。如果你对这个 mr 有信心,你可以在 ui 上使用 cherry-pick\merge 按钮,它应该在 master 分支上。您也可以将此提交发布给其他审阅者。

      附言更新(您可以通过 UI 挑选、合并、发布)

      【讨论】:

      • 我用点击“补丁集”时在右上角看到的内容更新了我的问题。我没有看到你提到的别名......?
      • 对不起,请稍等,我正在对我的答案进行新的更改)
      • 我点击了“Cherry Pick”,它问我是哪个分支,所以我尝试输入“refs/for/master”,但它不喜欢这样(说“代码审查 - 错误,分支 refs /for/master 不存在”)。如果我只输入“master”,它会接受并说我现在有“Uploaded patch set 3”,但在右上角它仍然显示“Change 58358 - Draft”,并且它不会开始测试构建。还有什么想法吗?
      • 奇怪,您是否在 Owner、Reviewers 标题上方看到“发布按钮”,并且您有 +2 的赠款吗?
      • 我已经 +2 了。但我没有看到“发布”按钮。 “发布”的唯一实例是在“历史记录”部分,在文本中显示“补丁集 2:补丁集 1 上的已发布编辑”。
      【解决方案3】:

      执行以下步骤:

      1) 转到草稿更改页面

      2) 点击樱桃采摘按钮

      3) 在 Cherry Pick to Branch 字段中写上“master”

      4) 如果需要,调整 Cherry Pick Commit Message

      5) 点击Cherry Pick Change按钮

      它将创建一个从草稿更改中挑选出来的 NEW CHANGE。转到新的更改页面并遵循常规的 Gerrit 流程(审查、批准、提交)。可以放弃或删除原始草稿更改。

      【讨论】:

      • 尽我所能遵循这些说明(我不完全确定“草稿更改页面”或“新更改页面”是什么),它添加了一条历史记录行,上面写着“上传的补丁集 4 .",但仅此而已。它没有开始构建,它仍然说我已经 +2 了它,它不会给我一个提交按钮。
      • 什么是 Gerrit 版本?你点击“樱桃采摘”按钮了吗?你还没有点击“Rebase”按钮,是吗?
      • 所以这里的人告诉我,我不能做这些事情,因为我不是草稿的所有者。无论如何,事实证明这太麻烦了,我正在以不同的方式处理它。感谢您的帮助。
      • 如果您无法点击“Cherry Pick”按钮,您就不应该说您点击了它。
      • 好吧,我可以点击“Cherry Pick”按钮。然后它问我是哪个分支,我输入“master”,然后单击“Cherry Pick Change”按钮,然后它向历史记录添加了一个新补丁集,但它从未将提交从“draft”转换为“Needs Code” -Review”,并且永远不会在 Jenkins 上开始构建它。它只是一直坐在那里说“已上传补丁集 X。”。
      猜你喜欢
      • 2011-06-24
      • 1970-01-01
      • 1970-01-01
      • 2017-06-18
      • 1970-01-01
      • 1970-01-01
      • 2018-11-02
      • 1970-01-01
      • 2020-08-02
      相关资源
      最近更新 更多