Gerrit 合并两个提交

Gerrit Merge two commits

我有这个问题

master -> First commit (BROKEN) -> Second commit (Fix of previous commit)

我应该如何解决这个问题(不应该发生,应该是对第一次提交的修改而不是第二次提交)?

我可以 amend/merge 以某种方式在 gerrit gui 中提交两次吗?

不是我的提交,所以不要在本地使用它们

简而言之:

不,您不能在 Gerrit GUI 中合并它们。 (你可以写一个插件,如果你真的想要的话。

默认方法是在本地更正它(即使用 git rebase --interactivegit reset --soft HEAD~1; git commit 合并两个提交)。

然后推送组合提交。

最后,使用 gui/website.

放弃现在已过时(并标记为 OUTDATED)的第二次提交

根据您的具体问题,有很多可能的解决方案。但是前往 git shell 将是恕我直言的最佳起点 ;)

根据你的描述,我的感觉是,rebaste interactive 可以帮助解决这个问题。所以

git rebase --interactive origin/master 

将弹出一个编辑器 window,您可以在其中将修复提交标记为修复。关闭编辑器,两个提交将合并为一个提交。

而不是 origin/master,这是你的 rebase 的起点,你也可以使用像 HEAD~2 这样的东西,它会在你当前的头之前开始 2 次提交。