Gerrit项目带有“必要时重新设置”:Gerrit说“无法合并”,但是手动重新设置可以吗?

leeyuiwah

我们有一个Gerrit项目,“提交类型”设置为“必要时重新设置”。更改的自动验证是通过Jenkins构建完成的。

如果存在并发更改(例如,更改A和B都基于同一父级),则当一个更改(例如A)得到审核,提交和合并时,另一个更改(例如B)将具有一个父级“不是当前的”

这部分我了解。

我不明白的是:如果我们已经选择了提交类型为“必要时重新设置”,为什么Gerrit仍会说“无法合并”?为什么不自动将B重新设基?

实际上,我确实看到一些并发的更改已收到自动变基的处理。但这并非一直存在。为什么?

通常,在Gerrit Web UI上,B的父母的哈希旁边将有一个橙色的点,上面写着“不最新-可能会变基”。是否会出现“不是当前状态-无法重新设置基准”的情况?

(如果可以重新设置基准,那么Gerrit为什么不自动执行呢?)

最后一个问题:当按下[Rebase]按钮时,将弹出一个标题为“代码审查-更改基准”的窗口。然后有一个复选框“更改父修订版”和一个文本字段“(主题,更改编号或保留为空)”。我们应该如何使用复选框和文本字段?

谢谢!

马塞洛·阿维拉·德·奥利维拉(MarceloÁvilade Oliveira)

1)自动变基

首先在以下位置检查您的项目是否启用了内容合并:

Projects > List > YOUR-PROJECT > General > Allow content merges = true

然后请记住,如果必须手动解决冲突,则Gerrit无法自动执行变基。在这些情况下,您需要在本地执行变基,解决冲突并将另一补丁集推送到Gerrit。

2)变基选项

该复选框用于选择要在基准库中使用的其他父修订版。默认的父修订版是:

  • 如果更改不依赖于另一个未完成的更改,则将重新基于目标分支的尖端。

  • 如果更改依赖于另一个未完成的更改,则将基于该其他更改的当前补丁集重新建立。

在此处查看更多信息

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

GitHub可以像Gerrit一样重新设置基础而不是合并吗?

如何使用命令重新设置Gerrit更改?

重新设置基准后手动合并的拉取请求在Github上未显示为已合并

使用合并的提交重新设置Git

合并后如何重新设置基础?

您可以从远程分支“重新设置”提交吗?

无法在 IEventAggregator 中重新设置 DelegateCommand?

重新设置时的Git冲突

VSTS:在构建到期时自动重新设置/合并并重新排队构建验证门

重新加载页面时重新设置表单?

来自refs / for / master的Gerrit自动重新设置基准可能会导致master中有1条以上的历史记录条目

重新设置基准后,错误地与mergetool合并

重新设置或合并Git分支,但保留已删除的文件

重新设置基础后丢失代码,其中合并被压缩

Android Studio更新项目:合并,重新设置,分支默认

是否可以在git中将分支及其未合并的子分支重新设置基础?

当git合并了一个远程分支时,它会为该分支重新设置基础

为什么可以重新设置参考参数?

重新设置结果可能与合并结果有何不同?

对尚未由回购所有者合并的拉出分支进行重新设置基准

如果要删除共享分支,可以重新设置基准吗?

重新设置了外观的ToggleSwitch动画无法正常工作

使用源代码树,发生冲突时重新设置基准,解决冲突后重新设置无效

重新设置后的Git推送

如何从父分支重新设置基准?

git不重新设置基准

Git分支在重新设置后分叉

重新设置单个Git提交

使用github的api重新设置基准