2

我已经在我的 ubuntu 服务器上建立了一个新的 git 存储库。我做了一些初始提交,并通过 ssh 从我的 mac 成功克隆了存储库。尝试推送我在 mac 上所做的更改时,出现以下错误:

error occurred during unpacking on the remote end: unpack-objects abnormal exit

有人可以帮我解决这个问题吗?

4

2 回答 2

4

我们遇到了同样的问题 - 使用 Netbeans 的 Windows PC 推送到带有主 repo 的 RHEL 服务器。

到目前为止,我发现的唯一解决方案是运行git fsckgit prune然后git repack remote/origin/master是最终的git fsck. 第一个git fsck将显示您有一个或多个悬空提交,随后的命令会清理存储库,然后您就可以从 Netbeans 推送。我试图检查这些,但它们似乎不存在,所以它们来自哪里是个谜。如果我从另一个 Linux 机器从命令行推送,则不会出现此问题。这一切都是通过 SSH 完成的。

当只有一个用户推送到 repo 时很好,但是一旦其他人这样做,那么第一个用户(在拉取非快进之后)会得到这个错误。我怀疑 Netbeans 在推送中做了一些奇怪的事情,但我不知道是什么。

编辑:

根据对此答案的评论,这基本上与 WRITE 权限有关,但我已经通过执行以下操作解决了它(假设“开发人员”是我们想要允许推送的组并且 example.com.git 是回购)

[tim@dev git]# chgrp -R developers example.com.git
[tim@dev git]# chmod -R g+swX example.com.git

有关更多信息,请参阅Serverfault 上的此答案

于 2012-10-17T12:55:51.240 回答
1

我通过在 git 服务器上重新启动 ssh 守护进程解决了这个问题

# service sshd restart
于 2014-08-26T15:57:46.310 回答