1

我有一个裸存储库 A.git,它有 1500 个不在 Gerrit 下的分支,并且驻留在主机 1 中

我有一个相同的裸存储库 A.git,在 Gerrit 下有 2000 个分支,并且驻留在主机 2 中

Gerrit 下 A.git 中的 500 个额外分支可能是用户推送或评论/更改等的分支。我不需要这些分支,应该修剪。

因此,从源 A.git(主机 1)到 Gerrit(主机 2)下的 dsetination A.git 的复制应该准确地反映所有更改,并且还应该修剪目标(Gerrit)上的额外 500 个分支。Gerrit 中 A.git 下的 BUt refs/meta 应从修剪中排除,因为 Gerrit 需要正确识别存储库。

A.git -> A.git (Gerrit)。来自源的所有分支都应该同步到目标,并且应该修剪目标(Gerrit)中的额外分支。

push --mirror 选项不起作用,因为它试图删除 refs/meta 并且还会引发一些内部错误 - 权限被拒绝错误。

4

1 回答 1

0

正如 Marcelo 提到的,您可以使用复制插件。这允许您在 Gerrit UI 下提交补丁集时复制任何 git 存储库。

官方文档

于 2017-01-17T13:48:04.597 回答