提高github下载速度的方法「100%有效」可达到2MB/s-程序员宅基地

程序员的成长之路

互联网/程序员/技术/资料共享 

关注

阅读本文大概需要 2.8 分钟。

作者:kcx64

链接:blog.csdn.net/kcx64/article/details/83866633

因为大家都知道的原因,在国内从github上面下载代码的速度峰值通常都是20kB/s。

这种速度对于那些小项目还好,而对于大一些的并且带有很多子模块的项目来讲就跟耽误时间。

而常见的的方法无非就是修改HOST或者挂VPN,实际用起来并不稳定。

这里提供一种新的方法,下载速度可以达到 1~2MB/s。

1. 利用开源中国提供的代码仓库

标题已经说的很清楚了,我想对于经常使用git的人来讲,很可能已经知道了。对于新手刚接触git的人来讲,可能你只知道github。

实际上,国内也有很多代码仓库提供方,国外也不只github。只不过国内也是刚刚开始,关注的人不多。

开源中国提供的代码仓库提供了一个功能,就是它可以将github账号中的代码 clone 到开源中国的账户中去。这个代码仓库叫做 码云 ,没错就是码云?。

要求你有一个github账户,一个码云gitee账户。

步骤很简单

1.将github上面你想要搞下来的项目首先 frok 到你自己的github的账户中去。

耗时:一瞬间

2.登录gitee,没有的自行注册。网页中有添加项目的按钮,一个加号。点击加号,下拉列表里面有 迁移github项目 的选项,点开后按照提示关联自己的github账号,之后选择你要迁移的项目,按提示操作。

耗时:不到三分钟。

3.按照 clone github项目方法, clone 迁移到gitee账户中的项目。区别是 clone 链接换成了目标项目在gitee中的链接。通常下载速度是以MB/s为单位的。

按照上面的方法,基本上不再需要整夜挂机 clone 代码了。

最近重新看了下,其实上面的步骤有些繁琐,其可以更简单,新建仓库直接设置远程仓库地址。

第一步新建仓库:

.

第二步:以github仓库https://github.com/PX4/Firmware.git举例

第三步:

第四步

2. 提高下载子模块的速度

有的项目里用到了第三方代码仓库,但是在你使用 clone 指令的时候这些子模块 submodule 并不会自动下载,因为他们在另外的地址中存放。你

需要 clone 完目标项目后,执行

git submodule update --init --recursive

才会将目标项目所需要的依赖子模块下载下来。github项目中所用到的子模块依然是放在了github上。

这就很悲剧了,这意味着你在执行上面指令后,依然需要面对上面的20KB/s的速度。

虽然此时并不会显示出来,然而等待依然很久。

我们同样使用上面加速 clone 的思路。

从下载的项目中找到其使用的 submodule 的链接是哪里。

打开上一步中的链接,将使用的目标子模块的代码同样 frok 到自己的github账户中,之后同样的方法迁移到gitee中去。有多个子模块就多重复几次操作,同样的套路。

将原项目使用的 submodule 模块的链接地址修改为子模块迁移到gitee中后的地址。

这时再去执行git submodule update --init --recursive 。

以上就是提高下载子模块速度的思路。具体每步的操作,请自行搜索,网上一搜一大片。

<END>

推荐阅读:

网传阿里P8质疑蒋凡妻子微博“被控评”后被辞退, P10领导回应,P8回怼!

面试:SpringBoot中的条件注解底层是如何实现的?

5T技术资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,单片机,树莓派,等等。在公众号内回复「2048」,即可免费获取!!

微信扫描二维码,关注我的公众号

写留言

朕已阅 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_42914528/article/details/105885164

智能推荐

Linux查询进程指令_linux查看进程命令-程序员宅基地

文章浏览阅读9.2k次,点赞3次,收藏7次。Linux 查询杀死进程_linux查看进程命令

Oracle EBS Forms查看trace file_ebs form trace-程序员宅基地

文章浏览阅读7.5k次。Introduction:Some times we need to diagnose the issue or error coming in forms. For such situation we need to get more information about the issue we are facing in forms. One of the best way to get su_ebs form trace

SpringBoot集成Spring Security(3)——异常处理_disabledexception-程序员宅基地

文章浏览阅读2.5w次,点赞25次,收藏92次。Step1 常见异常Step2 源码分析Step3 处理异常不知道你有没有注意到,当我们登陆失败时候,spring security帮我们跳转到了/login?error,奇怪的是不管是控制台还是网页上都没有打印错误信息。这是因为首先/login?error是spring security默认的失败url,其次如果你不手动处理这个异常,这个异常是不会被处理..._disabledexception

webview 加载h5页面,播放视频+全屏,实现简单封装_webview 加载的时候 可以直接播放视频吗-程序员宅基地

文章浏览阅读1.8w次,点赞4次,收藏7次。前段时间项目中用到了h5。从目前的市场来看,原生和h5的结合受到很多公司的欢迎,刚好最近微信也推出了它自己的“小程序”,这在Android程序员之间也掀起了波澜,引起大家讨论。个人觉得Google提供的webview有很多的坑,我这次就踩了不少,比如在某些版本的系统上某个方法不会执行,或者执行的顺序不一样,有的方法会多执行一次,说白了就是兼容性做的很差,究其主要原因,是Android4_webview 加载的时候 可以直接播放视频吗

ComfyUI 一键整合包- AIStarter启动器专属_comfyui-aki-v1.1.7z-程序员宅基地

文章浏览阅读532次,点赞9次,收藏7次。AIStarter使用教程及注意事项 -AIStarter tutorials and notes on how to use it。_comfyui-aki-v1.1.7z

【linu相关】Ubuntu 文件系统相关命令_bantu系统命令-程序员宅基地

文章浏览阅读8k次,点赞4次,收藏35次。linux系统(以Ubuntu系统为例)的文件系统Linux下“/”就是根目录,所有的目录都是有根目录衍生出来的。/是一切目录的起点,如大树的主干。其它的所有目录都是基于树干的枝条或者枝叶。在ubuntu中硬件设备如光驱、软驱、usb设备都将挂载到这颗繁茂的枝干之下,作为文件来管理。_bantu系统命令

随便推点

Go-MySQL(二)Go实现MySQL连接池_go语言mysql连接池-程序员宅基地

文章浏览阅读1.4k次。文章目录Go-MySQL(二)Go实现MySQL连接池连接池数据结构获取连接释放连接关闭连接池测试完整代码Go-MySQL(二)Go实现MySQL连接池连接池数据结构利用channel来存储数据库连接,消费channel中的消息获取连接,连接池未满时则新建连接后将连接放入channel,采用的带缓冲区的channel,缓冲区大小就是连接池的最大容纳的连接数,如果缓冲区还有空间,那么获取和释放连接都不会阻塞,如果缓冲区为空,那么就是阻塞连接获取,从而走新建连接的逻辑;同理,缓冲区满了,就阻塞向chann_go语言mysql连接池

Mysql 日志分析工具介绍_mysql日志分析工具-程序员宅基地

文章浏览阅读1.1w次。1. 工具简介pt-query-digest是用于分析mysql慢查询的一个工具,它可以分析binlog、General log、slowlog,也可以通过SHOWPROCESSLIST或者通过tcpdump抓取的MySQL协议数据来进行分析。可以把分析结果输出到文件中,分析过程是先对查询语句的条件进行参数化,然后对参数化以后的查询进行分组统计,统计出各查询的执行时间、次数、占比等,可以借助分_mysql日志分析工具

javaweb基于SSH开发校园社团管理系统源码 课程设计 大作业 毕业设计_tp6校园社团管理系统-程序员宅基地

文章浏览阅读106次。开发校园社团管理系统(大作业/毕业设计)+Jdk+Tomcat+MYSQL数据库。开发环境: Windows操作系统。_tp6校园社团管理系统

网络安全学习--用户和用户组_组或用户名-程序员宅基地

文章浏览阅读1.1k次。文章基于Windows2003服务器系统版本Windows:win200,win2003,win2008r2,win2012Linux:Redhat,CentOS用户每个用户登录系统后,拥有不同的操作权限每个账户有自己唯一的SID(安全标识符)用户SID:S-1-5-21-42342423434-1433343434-500系统SID:S-1-5-21-42342423434-1433343434用户ID:500windows系统管理员administrator的UID是500普_组或用户名

Java注解 编译_Java注解之编译时注解-程序员宅基地

文章浏览阅读427次。新建两个moduleannotation用来定义注解compiler用来编写处理注解的代码这两个module都要选择Java Library 那为什么要拆分两个module呢,因为编译期注解的处理代码是只在代码编译的时候使用的,所以这些代码要和主module分开拆成compiler,但是compiler又依赖于注解,主module也要使用注解。所以就将注解的定义也拆分出来。这样做的好处是可以..._bw.append

mini2440 uart 裸机c-程序员宅基地

文章浏览阅读66次。转载于:http://blog.csdn.net/yx_l128125/article/details/7703653Uart工作原理:数据通信方式为:并行通信与串行通信两种:§并行通信:利用多条数据线将数据的各位同时传送。它的特点是:传输速度快,是用于短距离通信;§串行通信:利用一条数据线将数据一位位地顺序传送。特点是通信线路简单,利用简单的线缆就实现通信,低成本..._mini2440 nand uart 裸机