关于git拉取项目时,报RPC failed; curl 18 transfer closed with outstanding read data remaining错的解决方案
之前在从git远程库拉取项目的时候,出现了如上错误,因为拉取时间过长才报的错,所以猜测是内存或者项目过大导致的无法拉取,所以搜了搜,网上说是解决方案有三种,一种是增大缓存区;二是浅克隆,也就是说克隆的时候,先少克隆一些,比如只克隆每个文件只取最近一次提交,不是整个历史版本,三是换协议:具体解决方案如下:
一,加大缓存区
git config --global http.postBuffer 524288000
这个大约是500M
二、少clone一些,–depth 1
git clone https://github.com/flutter/flutter.git --depth 1
–depth 1的含义是复制深度为1,就是每个文件只取最近一次提交,不是整个历史版本。
三、换协议
clone http方式换成SSH的方式,即 https:// 改为 git://
例如git clone https://github.com/test/test.git
换成git clone git://github.com/test/test.git
记录一下今天在GitHub上拉取代码的报错及解决方法
原因可能有文件过大、网速太差、以及一些国外资源因为墙的因素影响等等
解决方式:
1、文件太大,解决方式为git添加 compression 配置项
git config --global core.compression -1
1
compression 是压缩的意思,从 clone 的终端输出就知道,服务器会压缩目标文件,然后传输到客户端,客户端再解压。取值为 [-1, 9],-1 以 zlib 为默认压缩库,0 表示不进行压缩,1…9 是压缩速度与最终获得文件大小的不同程度的权衡,数字越大,压缩越慢,当然得到的文件会越小
2、可以增加git的缓存大小
git config --global http.postBuffer 1048576000 (1G)
1
3、配置git的最低速和最低速时间
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999 单位 秒
1
2
global配置对当前用户生效,如果需要对所有用户生效,则用–system
作者:阿笨
【官方QQ一群:跟着阿笨一起玩NET(已满)】:422315558
【官方QQ二群:跟着阿笨一起玩C#(已满)】:574187616
【官方QQ三群:跟着阿笨一起玩ASP.NET(已满)】:967920586
【官方QQ四群:Asp.Net Core跨平台技术开发(可加入)】:829227829
【官方QQ五群:.NET Core跨平台开发技术(可加入)】:647639415
【网易云课堂】:https://study.163.com/provider/2544628/index.htm?share=2&shareId=2544628
【腾讯课堂】:https://abennet.ke.qq.com
【51CTO学院】:https://edu.51cto.com/sd/66c64
【微信公众号】:微信搜索:跟着阿笨一起玩NET