git clone 或 push 太慢的解决方法

不知别人git clone 的速度怎么样,我自己在clone仓库时巨慢无比,基本只有10~20kib/s,一些大的项目简直了!

上网查询后,得出一些经验,至少是解决了我自己的问题。

解决方案:

1、git 支持代理,如果你自己有一些ss工具的话,可直接让git走代理。

git config --global http.proxy socks5://127.0.0.1:1080
git config --global https.proxy socks5://127.0.0.1:1080

注意:这是全局代理,且socks5的端口是1080,请注意自己的本地端口是否是1080。

检查配置是否生效:

git config --global --get http.proxy
git config --global --get https.proxy

如果想取消使用代理,可以输入以下命令:

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

重新clone一遍,速度会有极大提升。

2、git clone 或者git  push特别慢不是因为github.com被限制,而是github.global.ssl.fastly.Net域名被限制了。

修改hosts可解。

windows上进入c:\windows\system32\drivers\etc,找到hosts,注意备份!记事本打开后末尾加上

151.101.72.249 http://global-ssl.fastly.Net
192.30.253.112 http://github.com

保存并替换。

刷新DNS来生效。CMD控制台输入:

ipconfig /flushdns

重新clone一次,ssh或者https都可以。我本人clone的速度达到了1.38mib/s

其他一些方法:

1、码云

码云是国内的服务器,所以在GitHub上fork项目后,用码云导入GitHub项目,然后git clone  <导入码云的仓库地址>

2、最新版本

git clone 默认会下载项目的完整历史版本,如果你只想要最新版的代码,可以使用 git 的浅复制功能,例如:

git clone --depth=1 https://github.com/Hydra92/WordPress.git

--depth=1  表示只下载最新的一次版本。如果之后你还想获取完整历史信息,可以输入:

git fetch --unshallow

END

你可能感兴趣的:(git clone 或 push 太慢的解决方法)