当我试图逃跑的时候

git push origin master --force

我刚刚

Counting objects: 2649, done.
Delta compression uses 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

这和缺乏安全感有关吗?我尝试创建一个公钥作为致命的答案:远程端意外挂断并重新运行它,但它仍然不工作。我不是在用钥匙吗?如果是,我该如何使用它?


当前回答

其他解决方案在我的情况下不起作用,做垃圾收集为我解决了这个问题:

git gc --aggressive

你可以先试试git gc。

其他回答

原因:Git的默认文件大小已经超过。

解决方案:导航到repo。进入存储库后,运行如下命令将缓冲区增加到500MB:

git config http.postBuffer 524288000

如果您推送的任何提交都是畸形的,也会发生这种情况。

我(不知不觉中)提交了一个畸形的作者电子邮件字段,但我得到的只是这个模糊的远程挂断错误消息。我能够推送其他分支,而不是这个分支,所以我开始推送来自“坏”分支的提交,直到我最终降落在:

Pushing to git@github.com:directangular/unicorn.git
Counting objects: 100% (9/9), done.
Delta compression using up to 20 threads
Writing objects: 100% (5/5), 549 bytes | 549.00 KiB/s, done.
Total 5 (delta 4), reused 0 (delta 0)
remote: error: object 74c7584ff0b93591c19d3a3c19695889dd2274d2: badEmail: invalid author/committer line - bad email        
remote: fatal: fsck error in packed object        
error: remote unpack failed: index-pack abnormal exit
To github.com:directangular/unicorn.git
 ! [remote rejected]       pizzafeast -> pizzafeast (failed)
error: failed to push some refs to 'git@github.com:directangular/unicorn.git'

因此,看起来远程端意外挂起的错误有点像“吞下”实际的错误消息,这可能是我在这里看到的某种畸形提交。

在修复了错误的电子邮件后,我能够很好地推动。

我也有同样的问题。我注意到从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

上面的答案对我都没用,但下面的答案对我有用。

从项目中删除.git/ 克隆远程回购到一些新的位置,如你的桌面: Git克隆https://github.com/foo/bar.git 将.git/从新位置移动到旧位置 重新提交并推动您的更改