我无法将大约 20MB 的大更改或文件推送到 Git。在 POST git-receive-pack 后它会一直挂起并显示
致命:远程端意外挂断错误:RPC失败;结果 = 56,HTTP 代码 = 0
我在 StackOverflow 上看到了其他问题,但没有一个有效。但是,我确实尝试了很多事情,所以希望这些额外的信息可以帮助找到解决方案。
我使用没有 SSL 证书的 IIS 和 http 设置了 Bonobo Git 服务器,一切正常。我可以使用 TortoiseGit、GitExtensions 推/拉大文件,也可以使用 Visual Studio 2015 社区。显然,如果没有加密,这是不安全的。
当我使用 https 和 SSL 证书设置 Bonobo 时,就会出现问题。我使用 makecert 和 pvk2pfx 创建了 CA 和服务器证书,并将证书安装在 Windows 商店中。该网站运行良好,我可以拉动和推动小的变化。但是,当我尝试推送一个大文件时,即使使用 Git GUI,它也会挂在消息 POST git-receive-pack 上。但是 Visual Studio 2015 社区可以正常工作!一旦我使用 VS 推送,我就可以使用 Git 将这些更改拉到另一台计算机上。这让我相信这是 Git 而不是 Bonobo 服务器的问题。
我必须做的事情是将 SSL 密钥添加到 bundle.crt 并设置 postBuffer = 524288000。我还尝试 sslVerify = false 来测试 SSL 问题,但这不起作用。我还尝试关闭我的 Windows 防火墙。
这是 Git 和 SSL 的问题吗?还有什么需要设置的吗?我是 Git 的新手,现在试图让它工作几天。目前使用 Visual Studio 是一种解决方法,但能够直接在 Windows 中使用其他 Git 客户端会很好。我有最新版本的 Git,2.7.0,我相信当我尝试 GitExtensions 时它安装了一个预发布版本,我认为是 1.9