Git,致命的:远端意外挂断

当我试图跑步

git push origin master --force 

我刚得到

 Counting objects: 2649, done. Delta compression using up to 2 threads. Compressing objects: 100% (1280/1280), done. error: RPC failed; result=22, HTTP code = 413 | 116 KiB/s fatal: The remote end hung up unexpectedly Writing objects: 100% (2504/2504), 449.61 MiB | 4.19 MiB/s, done. Total 2504 (delta 1309), reused 2242 (delta 1216) fatal: The remote end hung up unexpectedly Everything up-to-date 

这与不安全有关吗? 我试图创build一个公钥,如致命的答案:远程端意外挂起,并再次运行,但它仍然无法正常工作。 我实际上没有使用密钥? 如果是这样,我该如何使用它?

这看起来类似于如何让github默认为ssh,而不是https为新的存储库 。 可能值得尝试从http协议切换到ssh:

 $ git remote add origin git@github.com:username/project.git 

问题是由于git / https缓冲区设置。 为了解决它(从git失败时推送提交到github )

 git config http.postBuffer 524288000 

然后再次运行该命令

原因:超过了Git的默认文件post大小。

解答:

导航到回购。

导航到存储库后,运行以下命令将缓冲区增加到500MB:

 git config http.postBuffer 524288000 

你可能会得到这样的错误

错误:无法lockingconfiguration文件.git / config:没有这样的文件或目录

那是因为你没有一个本地的.git/config文件你可以通过这个命令得到它的工作

git config --global http.postBuffer 524288000

其他解决scheme在我的情况下没有工作,做一个垃圾收集固定它给我:

git gc --aggressive

只是添加这个(因为这是我GOOGLEsearch时的第一个条目):

此错误也可能由于缺less对存储库的写入访问而引发。

在我的情况下,我用我的服务器的root帐户创build了回购,实际上后来忘记了这一点,所以git用户无法将推入写入目录。

在我们的例子中,问题是写了一个.git/config文件的克隆,它包含一个只读访问方法的url条目。 将url从://方法更改为@方法解决了问题。

运行git remote -v照亮了一些问题。

您可能已经在现有的存储库中克隆了存储库,为了解决这个问题,可以简单地将存储库克隆到另一个目录中,并将更改复制到这个新目录,然后运行推送。

如果你正在使用Windows的git(你可能是,如果你是在Windows机器上这样做),并没有其他修复在这里为你工作,尝试去https://github.com/git-for- windows / git / releases ,以及在版本2.4.5以后的版本。 修正了它对我来说。

另外,因为我以不同的方式遇到了这个错误,所以Google把我带到了这里。

我的问题是案件不匹配; 一个骆驼案件,一个不是。 显然,GIT阻止你这样做而不告诉你为什么。 因此,如果您的分支机构仅与大写字母不同,请尝试将它们更改为相同。

请参阅: Git:合并后,“主无法parsing为分支”

我碰巧遇到同样的错误。
我已经做了“http.postBuffer”的伎俩。 它解决了,但是当我想推,我又遇到了错误。

什么解决了我的问题:
1.使用其他虚拟机将其克隆到其他文件夹。 (Linux)的。
我做了我的改变。
把它推到原来的虚拟机,我最初无法推动。 (视窗)

当我在.ssh中有不正确的密钥对时,我得到了这个错误。 将pubkey添加到github(在设置中)为我解决了这个问题。

我也有同样的问题。 我从git的网页上注意到SSH的克隆URL有下一个结构:

 git@github.com:user/project.git 

我可以通过“/”来更改“:”来解决我的问题,如下所示:

 git@github.com/user/project.git 

可能会有所帮助。

相反的其他答案之一 – 我有推问式使用SSH的问题 – 我切换到https,它是固定的。

 git remote remove origin git remote add origin https://github..com/user/repo git push --set-upstream origin master 

更新您的OSX平台后可能会发生这种情况。

打开terminal并导航到您的.ssh文件夹,然后inputssh-add -K ~/.ssh/id_rsa

当我拼错我的远程分支名称时,我得到了这个错误

我能够使用Git Shell解决这个问题。

github.com中的每个存储库都为您提供HTTPS / SSH / Subversion URL,您可以使用Shell进行下载,请参阅http://prntscr.com/8ydguv
基于GitHub最近的变化,SSH似乎是最好的方法。

在Shell中使用的命令:

 git clone "URL of repo goes here w/ no quotes" 

似乎几乎没有什么补充答案,但是当我终于发现Visual Studio Online正在遭受零星中断的时候,我一直在争斗这个问题。 当VS不停地提示信用,VSO网站有时给了500。

 Counting objects: 138816, done. Delta compression using up to 8 threads. Compressing objects: 100% (38049/38049), done. error: unable to rewind rpc post data - try increasing http.postBuffer error: RPC failed; curl 56 SSL read: error:00000000:lib(0):func(0):reason(0), errno 10054 The remote end hung up unexpectedly/138816), 33.30 MiB | 3.00 KiB/s Writing objects: 100% (138816/138816), 50.21 MiB | 3.00 KiB/s, done. Total 138816 (delta 100197), reused 134574 (delta 96515) fatal: The remote end hung up unexpectedly Everything up-to-date 

之后,我将HTTP后置缓冲区设置回2Mb,因为我实际上认为它在许多较小的post中效果更好。

卢克

似乎可以是千件之一。

对于我来说,我最初是通过SourceTree推动主人并发展(主人没有变化)。 改变这个只发展起作用。

做到这一点,看看你使用的密钥; ssh -vT git@github.digitalglobe.com

然后确保在你的开发中你有这个运行。 eval“$(ssh-agent -s)”ssh-add〜/ .ssh / id_rsa