22

我在上面创建了一个新的存储库github并想推送一些文件。所以我像往常一样初始化存储库并git add .添加当前目录(这是我的java项目文件夹,bin里面有src文件夹)。然后我使用以下命令添加了远程目录:

git remote add https://github.com/username/project.git

然后我做了我的第一次提交git commit -m "First Commit"

然后我输入git push -u origin master并收到此错误:

Counting objects: 63, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (60/60), done.
Writing objects: 100% (62/62), 16.98 KiB, done.
Total 62 (delta 15), reused 0 (delta 0)
error: RPC failed; result=52, HTTP code = 0
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
Everything up-to-date

但是如果我只添加一个文件并尝试只提交一个文件,它就可以工作。

到底是怎么回事?为什么我不能提交整个 Java 项目?它是一个非常小的项目,只有 214k。请帮忙!谢谢!

4

9 回答 9

20

Bitbucket 具有相同的错误消息。通常它与服务器性能下降有关。在开始做任何其他事情之前,请检查:

于 2015-09-02T13:29:11.307 回答
16

如果您的HTTP发布缓冲区对于您要推送的更改来说太小,也会发生此错误。

在这种情况下,解决方案是增加它,例如使用

git config http.postBuffer 524288000
于 2014-05-15T10:33:32.627 回答
11

现在它正在工作!我什至没有改变任何事情。

这种错误'result=52'是github本身的错误。Github.com 出现故障,当我尝试上传时出现错误。现在该站点已备份,我可以像往常一样提交。

于 2013-08-26T05:26:15.800 回答
11

我在尝试通过 http 从 Bitbucket 存储库克隆/获取时遇到了这个问题。事实证明存储库太大(+1gb),Bitbucket 回复此错误:

error: RPC failed; result=52, HTTP code = 0
fatal: The remote end hung up unexpectedly

我切换到 SSH 协议,现在它工作正常。之后,您可以根据需要将遥控器设置回 http 版本,它会继续工作。

于 2016-03-15T17:14:37.333 回答
6

如果您的互联网连接也有问题,可能会发生这种情况,是的,我此时正在经历一个.. :)。

于 2014-08-21T12:07:18.770 回答
3

这也可能是由于以下原因

原因

大文件的存在(在我们的例子中为 45MB)

为什么

大文件导致 HTTPS 超时

解决方案

使用 SSH 或删除大文件

于 2016-08-04T09:07:01.423 回答
3

我试过这个:

$ git config --global --add core.compression -1
$ git clone https://....

它奏效了。

(在这里找到)

于 2016-01-26T08:03:05.877 回答
0

我花了几个小时。我在使用 https 时遇到了同样的问题。另外:我无法通过 ssh 连接到 bitbucket。

我正在使用 Linux Mint 17.x,这个解决方案就像 ssh 的魅力:

https://bugs.launchpad.net/ubuntu/+source/openssh/+bug/1254085(来自bs的回答——benzy-sagiv)

这解决了这个问题:

将以下内容附加到 /etc/sysctl.conf:net.ipv4.tcp_mtu_probing = 1

重新启动后,您应该在 /proc/sys/net/ipv4/tcp_mtu_probing 看到值“1”

临时解决方案是: echo 1 > /proc/sys/net/ipv4/tcp_mtu_probing 警告:这将在启动时重置。

如果仍然无法正常工作,您也可以尝试使用值“2”。

(见解释:https ://thesimplecomputer.info/pages/adventures-in-linux-tcp-tuning-page2 )

于 2016-10-19T11:50:28.783 回答
0

对于Bitbucket,我通过切换到 ssh 而不是 http 来解决这个问题。

  1. 配置SECURITY > SSH keysAvatar > Bitbucket settings
  2. 将远程 URL 从更改https://...git@...
    • 编辑.git/config文件启动git remote set-url origin git@...
  3. git push -u origin --all(注:git add .跟在git commit -m "intial commit"前面)

基于Wintersolider回答

于 2016-10-10T12:30:38.950 回答