将大型提交推送到GitHub会导致致命的写入错误:错误的文件描述符

时间:2013-12-13 08:17:30

标签: git github https

我正在使用GitHub来管理我的存储库,并且在尝试推送大型提交(1.5 GB)时遇到以下错误。

error: pack-objects died of signal 9
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
fatal: write error: Bad file descriptor

有任何想法如何解决这个问题?

3 个答案:

答案 0 :(得分:5)

我在git pack文件中遇到了这个问题。为了解决它,我重新包装并指定包的最大尺寸。

git repack --max-pack-size=100M -a -d

答案 1 :(得分:4)

由于提交大小很大,Github会丢弃连接。请考虑以下帮助页面:

https://help.github.com/articles/working-with-large-files

如果您使用SSH,您将看到类似这样的内容

  

remote:warning:检测到大文件。

     

remote:错误:文件giant_file是123.00 MB;这超出了GitHub的文件大小限制100 MB

在这种情况下,您的提交将被拒绝。使用HTTPS,目前无法将错误消息传输到您的客户端。

答案 2 :(得分:2)

这个提示可能适用于我正在使用git试图推送到Bluehost上的github,但这可能通常适用于很多托管公司。以前的提示并不奏效。 在得到

这样的错误之后
Counting objects: 3532, done.
Delta compression using up to 24 threads.
fatal: unable to create thread: Resource temporarily unavailable
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
fatal: write error: Bad file descriptor

这让我在共享主机上发送git提交。它必须禁止额外的线程。

git config --global pack.threads "1"

此处的相关问题和解决方案:git push fatal: unable to create thread: Resource temporarily unavailable