解决Github不能下载,下载速度慢的小妙招

简介: 解决Github不能下载,下载速度慢的小妙招

解决Github不能下载,下载速度慢的小妙招


错误描述

今天在github上使用 git clone 某个项目代码的时, git clone https://github.com/XXXX/xxx-blog.git 下载速度很慢,然后下载一段时间后,总是提示下面的错误信息:

remote: Enumerating objects: 33, done.
remote: Counting objects: 100% (33/33), done.
remote: Compressing objects: 100% (8/8), done.
error: RPC failed; curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054
fatal: the remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed 


错误原因

由于Http协议错误,当 pull 或者 clone 的时候,或者是 github 某个CDN被屏蔽所致。


解决办法1

协议错误

先执行下列命令

git config --global http.postBuffer 5242880000

再执行git pull或者 git clone 命令


解决办法2

修改域名


修改hosts文件

将上述获取的IP地址添加到hosts文件中

Mac在/etc/hosts中;

windows在C:\Windows\System32\drivers\etc\hosts中;

# fix git clone github project failed
140.82.113.3 github.com
199.232.5.194 github.global.ssl.fastly.net
192.30.253.120  codeload.github.com

刷新DNS缓存

Mac刷新DNS缓存

sudo killall -HUP mDNSResponder
sudo dscacheutil -flushcache

Windows更新DNS缓存

cmd命令窗口执行:

ipconfig /flushdns

使增加的映射生效。


解决办法3

使用chrome浏览器,安装一个插件【Github 加速器】

下载地址: https://chrome.zzzmh.cn/info?token=mfnkflidjnladnkldfonnaicljppahpg

安装后见crx文件拖到谷歌的扩展功能里面,然后安装成功。打开gihub会看到如下界面,多了几个加速地址.


解决办法4

利用socks5代理,配置好后明显加速。用下面两条命令配置好后,保持代理客户端开启就行了。

设置代理

# 可以参考以下配置,这里的127.0.0.1代表的就是你本机的IP地址,因为服务就在你本机上运行
# 10809是代理的客户端本地端口,默认是1080
git config --global https.proxy http://127.0.0.1:10800
git config --global https.proxy http://127.0.0.1:10800
git config --global http.proxy 'socks5://127.0.0.1:10800'
git config --global https.proxy 'socks5://127.0.0.1:10800'

上述方法挂了全局代理,但是如果要克隆码云、coding等国内仓库,速度就会很慢。更好的方法是只对github进行代理,不会影响国内仓库:

git config --global http.https://github.com.proxy socks5://127.0.0.1:10800
git config --global https.https://github.com.proxy socks5://127.0.0.1:10800

代理后git clone速度真的快了很多~我这边能到1MB/s以上

查看代理

git config --global -l

取消代理

git config --global --unset http.proxy
git config --global --unset http.proxy


其他异常问题

1. 解决 curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused

将下面的IP地址添加到hosts文件中

199.232.68.133 raw.githubusercontent.com
199.232.68.133 user-images.githubusercontent.com
199.232.68.133 avatars2.githubusercontent.com
199.232.68.133 avatars1.githubusercontent.com

2. 解决curl: (56) OpenSSL SSL_read: Connection was reset, errno 10054

一、问题:

error: RPC failed; curl 56 OpenSSL SSL_read: Connection was reset, errno 10054

如图:

原因:远程仓库的文件过大,需要设置本地仓库大小


二、解决步骤:

1、首先输入如下命令:

git config http.sslVerify "false"

若出现下列错误:

git config http.sslVerify "false" fatal: not in a git directory

再继续执行 git config --globle http.sslVerify "false" 问题解决

2、文件大小的上限设置:

git config --global http.postBuffer 524288000

fatal: not in a git directory** 再继续执行 **git config --globle http.sslVerify “false”`** 问题解决

2、文件大小的上限设置:

git config --global http.postBuffer 524288000

3、如果还是git代码还是下载失败,则需要继续修改git缓存的大小



相关文章
|
开发工具 git
github下载项目
github下载项目
367 0
|
Unix Shell 开发工具
Github-Git for windows&TortoiseGit下载与安装
Github-Git for windows&TortoiseGit下载与安装
3604 0
|
程序员 CDN
github Release 下载加速,绿色合法,遥遥领先
你有没有这样一个困惑,当你寻找了很久终于找到一个解决问题的方案,发现这个工具在 GitHub 上,接下来等待我们的就是遥遥无期的龟速下载。
2295 0
github Release 下载加速,绿色合法,遥遥领先
【教程】加速访问和下载github项目,原来替换一个域名就可以加速了
【教程】加速访问和下载github项目,原来替换一个域名就可以加速了
|
Web App开发 Linux 开发工具
告别卡顿,畅享GitHub:国内开发者必看的五大加速访问与下载技巧
【8月更文挑战第4天】告别卡顿,畅享GitHub:国内开发者必看的五大加速访问与下载技巧
告别卡顿,畅享GitHub:国内开发者必看的五大加速访问与下载技巧
|
人工智能 前端开发 Linux
github是怎么用的,如何下载仓库
github是怎么用的,如何下载仓库
github下载的.ipynb文件报错unreadable Notebook NotJSONError
【8月更文挑战第2天】文章提供了解决GitHub下载的Jupyter Notebook文件打开时报错的方法,包括端口冲突和文件加载错误。
563 0
github下载的.ipynb文件报错unreadable Notebook NotJSONError
|
缓存 网络协议 Windows
FFmpeg开发笔记(六)如何访问Github下载FFmpeg源码
在国内访问GitHub不稳定时,可以采取三种解决方法。首先,通过网站(<https://ping.chinaz.com/github.com>)找到快速响应的GitHub IP,将其添加到本地hosts文件,然后刷新DNS缓存以正常访问。其次,使用代下载网站如(<https://d.serctl.com/>)下载GitHub上的压缩包。最后,可从国内镜像站点,如码云(<https://gitee.com/mirrors/ffmpeg>),下载FFmpeg等开源代码。这些方法有助于绕过访问限制,确保FFmpeg学习与开发的顺利进行。
1226 3
FFmpeg开发笔记(六)如何访问Github下载FFmpeg源码