您如何将Gerrit更改移至其他分支?

问题描述 投票:0回答:1

在我们的Gerrit设置中,我们没有启用Move Change插件,但是在分支A上进行了很多更改,我们希望以最小的分布移动到分支B。

到目前为止,我发现这样做的唯一方法是在本地存储库中签出分支A上的更改,然后:

git push origin HEAD:refs/for/B

这会在分支B上创建一个新更改,从我尝试在分支A上进行的更改中提取“樱桃”。这意味着我们需要放弃分支A上的旧更改,因此比我想要(我们基本上是在复制我们要移动的每个更改)。

有什么方法可以通过git CLI移动更改吗?我希望以类似的方式更新分支,就像上载新变更集而不创建新变更一样。

git branch git-branch gerrit
1个回答
0
投票

Move Change不是插件,而是核心功能,自2.13版开始可用。从3.0.0版开始,可以disable it on the server config。 (请注意,此配置自3.0.0起可用,但仅自3.0.3起提供了文档。)>

如果Gerrit的版本早于2.13或3.0.0或更高版本,并且禁用了该功能,则无法移动更改的目标分支。您将不得不放弃它,并将新的重新上载到正确的分支。

对于3.0.0+,您可以要求服务器管理员启用该功能,尽管如果禁用该功能,则表示它是故意禁用的;默认情况下启用。人们可能想要禁用它的原因之一是它不会自动将移动的更改基于新目标,这可能导致包含不需要的提交。参见issue 12216

© www.soinside.com 2019 - 2024. All rights reserved.