Gerrit- 推送到 gerrit 时出现 Git 推送错误(不适用(解包程序错误))

Posted

技术标签:

【中文标题】Gerrit- 推送到 gerrit 时出现 Git 推送错误(不适用(解包程序错误))【英文标题】:Gerrit- Git push Error (n/a (unpacker error)) while pushing to gerrit 【发布时间】:2013-01-07 16:59:02 【问题描述】:

我是一名 android 开发人员,所以我为我的团队设置了 Gerrit Code Review 和 Github!因此,经过大量的努力,我将我的 github 项目添加到了 gerrit 中,并且还进行了复制工作,但我无法推送这个 repo。所有其他 repos 都可以正常推送。

我克隆了我的 github 存储库,然后使用 git remote add * 添加了我的 gerrit 项目的 ssh 链接,然后我输入了 git push gerrit HEAD:refs/for/ics 但我遇到了一些解包错误

这是整个日志:

keyur@keyur-Inspiron-N4010:~/android_device_lge_p350$ git push gerrit HEAD:refs/for/ics
Counting objects: 7, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 526 bytes, done.
Total 5 (delta 3), reused 0 (delta 0)
fatal: Unpack error, check server log  
remote: Resolving deltas: 100% (3/3)
error: unpack failed: error Missing unknown c605ed77d4a43b8389c7bb544c3a5834cf0f64cf
To ssh://keyur2maru@review.pecancm.insomnia247.nl:6117/android_device_lge_p350.git
 ! [remote rejected] HEAD -> refs/for/ics (n/a (unpacker error))
error: failed to push some refs to 'ssh://keyur2maru@review.pecancm.insomnia247.nl:6117/android_device_lge_p350.git'
keyur@keyur-Inspiron-N4010:~/android_device_lge_p350$ 

它失败了 :( 我可以提交任何其他 repos :( 但无法完成这项工作 :(

我的配置文件:

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = git@github.com:PecanCM/android_device_lge_p350.git
[branch "cm-10.1"]
    remote = origin
    merge = refs/heads/cm-10.1
[remote "gerrit"]
    url = ssh://keyur2maru@review.pecancm.insomnia247.nl:6117/android_device_lge_p350.git
    fetch = +refs/heads/*:refs/remotes/gerrit/*
[branch "ics"]
    remote = origin
    merge = refs/heads/ics

我的 Github 仓库:https://github.com/PecanCM/android_device_lge_p350

我的 Gerrit 服务器:http://review.pecancm.insomnia247.nl

【问题讨论】:

我不确定是不是the same problem,但听起来很像。你可以尝试降级 git 并推送吗? git unpack error on push to gerrit的可能重复 【参考方案1】:

如果你有访问gerrit服务器的权限,请检查你是否对你的gerrit的git文件夹授予了足够的权限。

【讨论】:

以上是关于Gerrit- 推送到 gerrit 时出现 Git 推送错误(不适用(解包程序错误))的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins 管道无法使用凭据推送到 gerrit

缺少提交消息中的 Change-Id 时出现 Gerrit 错误

在gerrit中提交的问题

Gerrit 中使用的常见用法及常见问题记录(更新中)

gerrit下设置git的http密码

将 Rails 应用程序推送到 Heroku 时出现啥错误