考虑以下突出显示的提交:
对于目前的讨论,我将参考如下提交: 提交1:从用户设置中读取语言设置 提交2:[POC]不审核
我们使用Gerrit进行代码审查。 Commit 1和Commit 2都在审核中,尚未合并。我正在使用Commit 1,它需要在Commit 2中使用代码,因此必须以它为基础。这些是我使用的命令:
Cherry Pick Commit 2.我使用来自Gerrit的cherry-pick命令进行更改:
进行我的工作所需的更改并推送变为Commit 1的更改。当我第一次推送Commit 1时,它基于Commit 2的补丁集8。
当我收到有关我的提交(提交1)的评论评论时,我会在Gerrit上为它推送新的补丁集。但是,当它最终要合并时,它需要在它的父(Commit 2)的最新补丁集上。我现在的方式如下:
有没有办法可以在不执行上述所有操作的情况下获取最新的Commit 2补丁集?也许是某种互动的樱桃挑选或反叛?
答案 0 :(得分:5)
您可以简单地将Commit 1重新绑定到FETCH_HEAD。在working2分支上,
$ git fetch ssh://user@gerrit.dev.xyz.net:29418/management-console refs/changes/26/11926/11
$ git rebase -i FETCH_HEAD
使用Commit 2的提交消息(通常是第一行)删除该行。现在,Commit 1将位于最新的Commit 2之上。如果您不熟悉交互式rebase,请查看here。