解决GitHub下载速度太慢问题的方法汇总(持续更新,建议收藏)

文章目录

  • 前言
  • 一、使用 git clone --depth=1 来下载
  • 二、修改host文件解决
  • 三、谷歌浏览器插件加速
  • 四、油猴插件和脚本
  • 五、gitclone.com
  • 六、Github 加速下载链接
  • 七、Github 镜像访问
  • 八、使用码云下载
  • 参考资料,感谢以下文章

前言

Github上下载仓库或者克隆仓库,速度基本稳定在 20k 以下,当克隆一些大的仓库时,以这乌龟速度,很容易出现克隆超时的错误,等了几十分钟的下载一夜回到解放前,那种感觉我猜各位或多或少都经历过。本博客汇总了几种亲测可用的方案,很大地提升下载速度,一个大的仓库一分钟左右就可以搞定,也会持续的更新一些可用新方法,希望对你有帮助。

以下方案均来自网络的分享,我只是做整理推荐。感谢那些无私的程序员们。

一、使用 git clone --depth=1 来下载

如果是文件本身过大的话,可以考虑使用:

git clone https://github.com/xxx --depth 1

https://github.com/xxx 是指定要克隆的远程代码仓库的 URL。–depth 1 参数表示只克隆最新的一次提交(默认主分支),而不是完整地克隆整个代码仓库的历史记录。这可以减少下载的数据量,加快克隆操作。

如果我们想只克隆某个指定分支的最近一次 commit,可以使用下面命令:

git clone  https://github.com/xxx --depth=1  --branch=xx_branch

用 git clone --depth=1 的好处是限制 clone 的深度,不会下载 Git 协作的历史记录,这样可以大大加快克隆的速度。depth 用于指定克隆深度,为 1 即表示只克隆最近一次 commit。

适合用 git clone --depth=1 的场景:你只是想 clone 最新版本来使用或学习,而不是参与整个项目的开发工作。

git clone --depth=1 后拉取其他分支的方法

cd xxx
git fetch --unshallow

这个命令用于将浅克隆(shallow clone)的代码仓库转换为完整克隆(full clone)。在浅克隆中,只克隆了最新的一次提交,而没有完整的历史记录。git fetch 命令用于从远程代码仓库获取最新的提交和分支信息。–unshallow 参数告诉 Git 将浅克隆转换为完整克隆,获取完整的历史记录。执行这个命令后,你将能够访问和操作完整的代码仓库。

二、修改host文件解决

大型网站服务器都不会是只有一台服务器,而是多台服务器组成的集群一起对外提供服务。

使用站长工具测速,找一个速度比较快的服务器。

请添加图片描述

请添加图片描述
然后,把刚才查到最快的 IP 地址和 Github 域名的字符串放在 hosts 文件最后,Mac 在 /etc/hosts 中,Windows 在 C:\Windows\System32\drivers\etc\hosts 中。

如本人本电脑查到最快的 IP 地址为:140.82.121.4(不同地方速度不同,以个人情况为准)。

在这里插入图片描述
最后,刷新 DNS 缓存使增加的映射生效。Mac 刷新 DNS 缓存,在终端输入 sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder,Windows 刷新 DNS 缓存,cmd 命令窗口执行 ipconfig /flushdns

执行完这些后,你会发现速度明显快了很多。

三、谷歌浏览器插件加速

为你的浏览器,安装一个插件【Github 加速】。

请添加图片描述
安装成功后,打开 Github 会看到如下界面,多了一个加速按钮和加速地址。

请添加图片描述

四、油猴插件和脚本

为你的浏览器,安装一个插件【Tampermonkey】。

请添加图片描述
然后安装 Github 增强脚本,安装成功后,Code 下方会多出多个加速地址。

请添加图片描述

五、gitclone.com

这是我用过最爽实用功能最全面的一个方式了。 https://gitclone.com 是一个提供下载缓存的代码下载网站,使用方法十分简单,只需要在仓库地址前面加上 gitclone.com,就可以使速度提升几倍。

例如要克隆 Github 上仓库地址​ ​https://github.com/killer-p/ctool.git​​ 只需将地址改为 ​​https://gitclone.com/github.com/killer-p/ctool.git​​,在命令行中执行​​ git clone https://gitclone.com/github.com/killer-p/ctool.git​​,速度直接起飞!

gitclone 的工作机理是:当开发者第一次经 gitclone.com 代理 clone 项目时,gitclone.com 异步镜像项目,以后有开发者 clone 该项目时,就会利用上 gitclone.com 的本地镜像,而不是从 github.com 上 clone。gitclone.com 会在每天夜间与 github.com 同步。目前 gitclone.com 对 star 超过 1500 的都做了镜像。通过 gitclone.com clone,如果能命中镜像,则速度会达到 1M 多,如果之前未 mirror 过,会随着 git clone 命令建立起镜像,下次 clone 会用到

六、Github 加速下载链接

网站地址:https://github.zhlh6.cn/。

复制 Github 仓库的地址,然后粘贴到第一栏,点击加速!生成加速地址,使用加速地址进行 git clone 下载,下载速度最高能提升到 1M。

请添加图片描述

七、Github 镜像访问

Github 镜像就是一个跟 Github 一模一样的网站,他会同步 Github上 的资源,国内访问 Github 镜像的速度较快,也可以在镜像下载仓库,平时逛逛 Github 也可以使用镜像,反正比较快,缺点就是不能登录。

镜像地址:https://hub.fastgit.org

注意这个网站不能登录 Github 账户,点击 sign in 会被浏览器拦截。

八、使用码云下载

码云本身支持从 Github 等其他代码托管网站一键导入repo,然后直接从码云上 clone 就会非常方便。

使用方法如下:首先,在码云中创建新仓库,直接选择导入其他网站已有仓库,

请添加图片描述
复制仓库的 url,或者直接选择导入 Github 仓库,如下图所示:

请添加图片描述
等个几十秒,码云把 Github 上的项目拉下来,放在了码云的服务器上,这时候我们就可以从码云下载仓库了。由于码云服务器在中国,下载速度很快。

参考资料,感谢以下文章

Github下载速度慢 提升github下载速度最新解决方案 跟龟速说拜拜

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/41367.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Docker基础——Centos7安装Docker

0.安装Docker Docker 分为 CE 和 EE 两大版本。CE 即社区版(免费,支持周期 7 个月),EE 即企业版,强调安全,付费使用,支持周期 24 个月。 Docker CE 分为 stable test 和 nightly 三个更新频道…

「深度学习之优化算法」(十三)蝙蝠算法

1. 蝙蝠算法简介 (以下描述,均不是学术用语,仅供大家快乐的阅读)   蝙蝠算法(Bat Algorithm)是受蝙蝠回声定位的特性启发而提出的新兴算法,提出时间是2010年,虽然距今(2020)有近10年,但与其它的经典算法相比仍算一个新算法。算法也已有一定规模的研究和应用,但仍…

数据结构 ~ 栈、队列

栈 一个后进先出的数据结构、JS中没有栈,可以使用 Array 模拟 const stack [] stack.push(1) // 入栈 stack.push(2) // 入栈 const item1 stack.pop() // 出栈 const item2 stack.pop() // 出栈以上代码可以使用 nodeJs 断点调试(F5启动&#xff0…

【Envi风暴】Envi5.6安装图文教程(附Envi5.6完整版下载)

本文讲解Envi5.6与应用商店app store的安装与使用。 文章目录 一、ENVI5.6安装过程二、app store的安装三、ENVI5.6下载地址一、ENVI5.6安装过程 从文末网盘下载完整的ENVI5.6安装包,如下所示:双击主程序envi56-win.exe,开始安装。 点击Next。 点击Next。 选择安装路径,可…

3.15 Bootstrap 警告(Alerts)

文章目录 Bootstrap 警告(Alerts)可取消的警告(Dismissal Alerts)警告(Alerts)中的链接 Bootstrap 警告(Alerts) 本章将讲解警告(Alerts)以及 Bootstrap 所提…

JDK、JRE、JVM之间的关系是什么?

目录 JVM、JRE、JDK的关系? JDK、JRE、JVM都是什么? JVM JRE JDK JVM、JRE、JDK的关系? 三者包含关系: JDK>JRE>JVM JDK、JRE、JVM都是什么? jdk:是用于java开发的最小环境 包括:ja…

8.postgresql--Update join 和 Delete using

Update join Update join用于基于另一张表更新表数据,语法如下: UPDATE t1 SET t1.c1 new_value FROM t2 WHERE t1.c2 t2.c2;CREATE TABLE product_segment (id SERIAL PRIMARY KEY,segment VARCHAR NOT NULL,discount NUMERIC (4, 2) );INSERT INTO…

【JavaEE】DI与DL的介绍-Spring项目的创建-Bean对象的存储与获取

Spring的开发要点总结 文章目录 【JavaEE】Spring的开发要点总结(1)1. DI 和 DL1.1 DI 依赖注入1.2 DL 依赖查询1.3 DI 与 DL的区别1.4 IoC 与 DI/DL 的区别 2. Spring项目的创建2.1 创建Maven项目2.2 设置国内源2.2.1 勾选2.2.2 删除本地jar包2.2.3 re…

数据中心机房建设,务必确定这13个关键点

下午好,我的网工朋友。 关于机房、机架的相关内容,给你们说了不少。 今天再给你补充个知识点,机房建设,要怎么做。 熟悉机房建设的网工朋友可能都知道,一个全面的数据中心机房建设工程一般包括: 综合布…

VUE- 选取本地图片,自定义裁切图片比例 vue-cropper

裁切图片,按照比例裁切,分步骤 1:el-upload选择本地图片(分选择本地和上传两步骤) 2:在on-change回调方法中拿到el-upload选中的图片,显示在vueCropper上()。 2.1&…

vulnhub靶场red:1教程

靶场搭建 靶机下载地址:Red: 1 ~ VulnHub 难度:中等 信息收集 arp-scan -l 这里没截图忘记了,就只是发现主机 扫描端口 nmap --min-rate 1000 -p- 192.168.21.130 nmap -sT -sV -sC -O -p22,80 192.168.21.130 先看80端口 看到链接点一…

在LLM的支持下使游戏NPC具有记忆化的方法

问题 使用GPT这样的LLM去处理游戏中的NPC和玩家的对话是个很好的点子,那么如何处理记忆化的问题呢。 因为LLM的输入tokens是有限制的,所以伴随着问题的记忆context是有窗口大小限制的,将所有的记忆输入LLM并不现实。 所以这里看到了stanfo…

深度学习开源框架

文章目录 1. 深度学习框架1.1 概述1.2 深度学习框架—关于组件1.2.1 组件—张量1.2.2 基于张量的各种操作1.2.3 计算图1.2.4 自动微分工具1.2.5 拓展包 2. 主流深度学习框架2.1 市面上主流框架2.2 本土深度学习框架2.3 深度学习框架的标准化--ONNX 3. Tensorflow3.1 Tensorflow…

让人恶心的多线程代码,性能怎么优化!

Java 中最烦人的,就是多线程,一不小心,代码写的比单线程还慢,这就让人非常尴尬。 通常情况下,我们会使用 ThreadLocal 实现线程封闭,比如避免 SimpleDateFormat 在并发环境下所引起的一些不一致情况。其实…

【TiDB理论知识 03】TiKV-持久化与数据读取

目录 一 TiKV架构和作用 二 数据持久化 1 RocksDB:写入 写入过程 第一步 :WAL 写日志 (磁盘日志) 第二步:写MemTable (内存中) 第三步 : 转存为immutable MemTable(内存中) …

Web 3.0时代,重塑教育与学习方式的可能性

随着科技的快速发展和互联网的普及,教育领域也面临着巨大的机遇和挑战。Web 3.0时代的到来为教育与学习方式带来了全新的可能性。在这个数字化时代,我们可以探索和利用Web 3.0技术,重塑教育的方式,提供更个性化、互动性和灵活性的…

餐饮业油烟在线监测系统的具体应用 安科瑞 许敏

摘要:本文利用物联网技术,构建了一套餐饮企业智能油烟在线监测系统,该系统前台由厨房端和管道端组成,通过网关接入云平台管理系统,实时监控烟道阀门的启闭、变频风机的启停与风速及功率调节、油烟浓度数据等。结合动态…

RabbitMQ安装及简单使用

说明:RabbitMQ(官网:)是一门异步通讯技术,使用异步通讯技术,可解决同步通讯的一些问题。 安装 本文介绍在云服务器上安装RabbitMQ,操作系统是CentOS 7,远程连接工具是WindTerm&…

opencv -10 基础运算之 图像加权和(图像融合图像修复视频合成)

什么是图像加权和? 所谓图像加权和,就是在计算两幅图像的像素值之和时,将每幅图像的权重考虑进来,可以用公式表示为: dst saturate(src1 𝛼 src2 𝛽 𝛾)式中,satu…

css通过子元素选择父元素

伪类:has选择父元素 td:has(> .unfoldTable){//可选中所有td下包含unfoldTable的class标签的td属性color: red; }td:has(> div){//可选中所有td下包含div标签的td属性color: red; } 特殊举例分析: 个别UI框架个别标签通过事件直接生成或者无法选中的情况。…