Git推送到新的远程错误

时间:2015-05-27 08:38:45

标签: git github push

我有一个本地git存储库,我的硬盘上有一个现有的遥控器。现在我想将存储库移动到github并按照文档执行以下操作:

git remote set-url origin https://github.com/xxx/xxx.git
git push -u origin master

但我收到了错误。

[user@machine folder]$ git push -u origin master
Username: 
Password: 
Counting objects: 7398, done.
Delta compression using up to 12 threads.
Compressing objects: 100% (2575/2575), done.
error: RPC failed; result=22, HTTP code = 0iB | 367.95 MiB/s   
fatal: The remote end hung up unexpectedly
Writing objects: 100% (7398/7398), 506.65 MiB | 367.95 MiB/s, done.
Total 7398 (delta 5083), reused 6965 (delta 4677)
fatal: The remote end hung up unexpectedly
fatal: expected ok/error, helper said '2004k¡oe>�Xx�FV.�Na�D�͂'

fatal: write error: Broken pipe

我在stackoverflow上找到的大多数问题都是通过

解决的
git config http.postBuffer 524288000

但它对我没有帮助 我也尝试了git repack,这使得错误更快(并且打印出来的一点点不好)。

git repack之前,错误看起来像这样:

[user@machine folder]$ git push -u origin master
Username: 
Password: 
Counting objects: 7398, done.
Delta compression using up to 12 threads.
Compressing objects: 100% (2771/2771), done.
error: RPC failed; result=22, HTTP code = 0iB | 11.89 MiB/s   
fatal: The remote end hung up unexpectedly
Writing objects: 100% (7398/7398), 506.60 MiB | 11.46 MiB/s, done.
Total 7398 (delta 5084), reused 6454 (delta 4481)
fatal: The remote end hung up unexpectedly
*�{�����@���߫��\l�|ʫ%r, helper said '2004�*U��m
                       ��EE$�%��M�l�\�yx�=�O�X.d (Y�gc�Ͷ�Ri�+�ONa���'���F�2X�P������~�,�rݐ��޾��_�,����n0��~8(��v��_�lꉋ�=C�����M�ݓYP���ЖO�e�t-����2X��s�Ϲ۱�<�o|�+�6x1�ob��v>�s��'

我现在非常绝望。有谁知道如何将本地git存储库推送到github?

1 个答案:

答案 0 :(得分:1)

可能是由于以下几个问题:

存储库大小限制

  

git config http.postBuffer 524288000

您设置的此配置只是增加了git在向网络发送数据时将使用的缓冲区大小

  

http.postBuffer
  将数据发送到远程系统时,智能HTTP传输使用的缓冲区的最大大小(以字节为单位)。对于大于此缓冲区大小的请求,使用HTTP / 1.1和Transfer-Encoding:chunked来避免在本地创建大量包文件。默认值为1 MiB,足以满足大多数请求。

错误的远程配置。

尝试使用此命令设置遥控器:git remote add origin https://github.com/xxx/xxx.git以及您已添加的set-url

您的代理设置

在某些代理中,对帖子文件的大小有限制,因为您的存储库很大(> 500MB),可能就是这种情况。

怎么做?

尝试逐一消除上述可能的问题

  1. 提交较少的文件并尝试提交它们。如果这样做,那么问题在于通过网络发送的包文件的大小。
  2. 使用gc --aggressive --prune=now
  3. 清理您的存储库