github下载速度慢
- 我相信这个是一个困扰很多程序员很久了的问题,很多时候我们想去下载github上优秀的开源项目,无奈因其项目的庞大导致下载/克隆失败,最后导致下载下来的文件是损坏的(github上克隆如果超时了会自动结束下载并保留文件,但是我们要一个损坏的文件又有什么用呢!!)
终于,有发现了一个非常完美能够解决这个问题的方法!!!!!
解决方法1:
第一步:
找到你想下载的那个github上的项目并复制地址
第二步:
打开码云,注册账号跟着流程走就行
鼠标拖动到页面上方的菜单栏的 "+"号 ,点击 从Github/Gitlab导入仓库
第三步:
进入导入仓库页面后,在"Git仓库URL"中,输入你想下载的那个项目在"github或者gitlab的地址"
输入之后会自动识别仓库名称和路径,接下来点 “导入” 即可
例:这里我以YOLO-LITE为例
点击导入后,等待系统将github上面的仓库导入到你自己的账号仓库里。
第四步:
回到你的码云仓库上,鼠标放在页面上方菜单栏的头像上,点击进入 个人页面,找到你从github上导入的仓库,点击进去。
进入仓库页面后点击 “克隆/下载”
此时可以选择两种下载方式:
-
第一种:(直接下载)
直接点击下载ZIP,这样会将这个仓库打包进压缩包里用你自己默认的下载工具进行下载 -
第二种:(利用git克隆下载)
点击复制HTTPS地址,打开你的 “cmd”输入git clone <刚才复制的地址>
(前提是有安装git)
当然也可以使用SSH下载。方法与github上克隆/下载类似。
到这里就下载完成了。
But,wait a minute!!! 如果你下载的是自己项目(需要重新再次上传)或者是想再pullrequest,请继续往下看!
如果你想把下载的项目要再次提交到github上,那么继续往下做
第五步:
找到你下载的项目并打开进入。
找到.git
隐藏文件夹(如果没找到是因为电脑没开启显示隐藏文件夹,WIN10用户点击文件页面上的视图按钮,勾选显示隐藏项即可)
进入.git
文件夹后找到config文件,对其右键,用自己常用的文本编辑器打开
找到remote“origin” 下的url
把这个改成对应在github仓库的地址,这样,这个从码云下载的项目就是对应github仓库上面的项目了,最后保存退出。一切git操作都可以使用。
Tips:
- 码云仓库的大小大概有5GB,如果不想用码云,只想用来当作下载器的话,记得每次下载完后删除自己在码云上的仓库。(真·工具云)如果你想用码云,那其他操作跟github上基本一致。
- 码云就是中国版的github
解决方法2:
由于某些原因,国内访问Github会异常缓慢,在clone仓库时甚至只有10k以下的速度,下载半天有时还会失败需要从头再来,甚是让人恼火。
本文介绍通过修改系统hosts文件的办法,绕过国内dns解析,直接访问GitHub的CDN节点,从而达到加速的目的。不需要科学上网,也不需要海外的服务器辅助。
1.获取GitHub官方CDN地址
查询以下三个链接的DNS解析地址
- github.com
- assets-cdn.github.com
- github.global.ssl.fastly.net
记录下查询到的IP地址。
2.修改系统Hosts文件
打开系统hosts文件(需管理员权限)。
路径:C:\Windows\System32\drivers\etc
在末尾添加三行记录并保存。(需管理员权限,注意IP地址与域名间需留有空格)
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
192.30.253.112 github.com
151.101.72.133 assets-cdn.github.com
151.101.193.194 github.global.ssl.fastly.net
3. 刷新系统DNS缓存
Windows+X 打开系统命令行(管理员身份)或powershell
运行 ipconfig /flushdns 手动刷新系统DNS缓存。