如何重新设置gerrit/git中存在冲突的私有分支的基础?

如何重新设置gerrit/git中存在冲突的私有分支的基础?,git,branch,conflict,rebase,git-rebase,Git,Branch,Conflict,Rebase,Git Rebase,目标:我想将提交G从“bravo”重设为提交F从“alpha”。 由此: G bravo / D--E--F alpha / A--B--C mainline 为此: G bravo / D--E--F alpha / A--B--C mainline “

目标:我想将提交G从“bravo”重设为提交F从“alpha”。 由此:

             G    bravo
            /
        D--E--F   alpha
       /
A--B--C           mainline
为此:

                G    bravo
               /
        D--E--F     alpha
       /
A--B--C             mainline
“alpha”已成功地重新基于最新的主线工作。我在C上选择“alpha”,当我选择“bravo”时,它会出现所有合并冲突。一旦我修好了,如果我修好了

commit --amend
提交消息只包含alpha的所有信息,而我希望包含bravo的信息。所以我在硬复位到C后再次尝试,对alpha进行拉(与樱桃拾取相反),然后拉bravo。修复了冲突,然后运行:

commit

提交消息只是将其列为合并,并具有合并信息。虽然提交成功了,但我不能把它推给gerrit,因为它说我无权推合并。当我读到关于重设基础的内容时,总是只对主线进行重设,但我想对私有分支进行重设基础。我哪里出错了?

在研究了重定基址等之后,我发现在这个场景中,您希望在另一个樱桃选择的更改(alpha)上樱桃选择bravo,然后在您提交时只使用

commit
不是

这将保留bravo的提交消息,并愉快地将其“重新设置”到alpha的最新补丁集

commit --amend