Gerrit补丁集依赖于过时的补丁集

时间:2017-03-16 10:06:25

标签: git gerrit

enter image description here

我做了什么:

  1. 将补丁推送到gerrit
  2. 制作标签
  3. 推送标签
  4. 管理员用户将此修补程序合并到主人
  5. 我找不到这个问题的答案。而最重要的是这个补丁取决于它自己。

1 个答案:

答案 0 :(得分:2)

问题:

您的更改(CHANGE-2)取决于另一个(CHANGE-1),但用作CHANGE-1基础的CHANGE-2的补丁集(提交)已过时。换句话说:某人(或Gerrit本身)为CHANGE-1创建了第二个补丁集,现在CHANGE-2依赖于永远不会被集成(合并)到分支的补丁集。

你有这样的事情:

BASE --- CHANGE-1_PATCHSET-1 --- CHANGE-2_PATCHSET-1
  \
   \--- CHANGE-1_PATCHSET-2

您需要将CHANGE-2重新定义为具有以下内容:

BASE --- CHANGE-1_PATCHSET-1 --- CHANGE-2_PATCHSET-1
  \
   \--- CHANGE-1_PATCHSET-2 --- CHANGE-2_PATCHSET-2

根据您的Gerrit版本和更改(如果您是否有冲突),您可以使用Gerrit UI上的Rebase按钮轻松完成此操作。如果你有一个旧的Gerrit版本或者你发现冲突,你需要手动执行“git rebase”(例如:git rebase CHANGE-1_PATCHSET-2_commit。