我正在将一个GitHub项目转移到Gerrit。我正在做以下事情:
-
在Gerrit中创建一个没有初始提交集的新项目
-
将回购从GitHub克隆到我的本地机器上。
-
cd进入我的机器上的repo目录
-
删除GitHub远程(git远程删除原点)
-
添加Gerrit remote(git remote添加原点ssh://git.
-
确保我在Gerrit 的目标存储库中拥有refs/*的推送权限
-
运行git推送原点主
运行步骤7时出现以下错误:![远程拒绝]主->主(Gerrit禁止:不允许更新创建新的提交对象)
我已经确认我的推送/获取远程实际上是我想要推送到的Gerrit存储库。此外,我已经验证了我可以在GitHub存储库之外对此存储库进行提交(例如,我可以提交一个只包含空.txt文件的提交以供审查)。
另一个注意事项是:我以前没有这个问题,但自从Gerrit升级到2.16.2 后,我就一直有这个问题
当你执行"git push origin master"时,你试图绕过Gerrit上的代码审查直接推送到分支(这是通常的推送-审查命令:git push-origin HEAD:refs/for/master")。"master->master(Gerrit禁止)"意味着你没有执行此推送的权限。
请在Gerrit文档中查看有关此错误的更多信息。
注意:这是一个权限问题,与Gerrit 2.16.2的升级没有直接关系。