(不换镜像源、不改host)解决git clone和git clone --recursive速度过慢的问题

如何解决git clone和git clone --recursive速度过慢的问题

普通办法

  百度过很多种方法,例如,改hosts,换镜像等,虽然有点作用,但是提升的速度不是很明显,以下介绍的是的的确确非常有用的办法:

  在git clone的时候,例如git clone https://github.com/username/xxx.git,改为git clone https://github.com.cnpmjs.org/username/xxx.git,也即加上后缀.cnpmjs.org,从国内镜像源里直接下载,速度瞬间提升。(实测有效)

  对于含有子模块的项目,一般我们在克隆这种项目的时候都会采取git clone --recursive https://github.com/susername/xxx.git的方式去克隆,这种方式很慢,即使加上.cnpmjs.org后缀,因为就算加上.cnpmjs.org后缀,也只是使得项目的主体克隆的很快,当克隆到该项目中的子模块时,由于子模块的url未加上.cnpmjs.org,导致了子模块克隆时依然是龟速。

  可以先不要在git clone的时候加上--recursive,等主体部分下载完之后,该文件夹中有个隐藏文件称为:.gitmodules,把子项目中的url地址同样加上.cnpmjs.org后缀,然后利用git submodule sync更新子项目对应的url,最后再git submodule update --init --recursive,即可正常网速克隆完所有子项目。

一劳永逸的办法

~/.gitconfig文件中加入如下代码,保存并推出就可一劳永逸了。
在这里插入图片描述

//方便复制
[url "https://github.com.cnpmjs.org/"]
  insteadOf = https://github.com/

使用此方法可能会遇到这种问题:

fatal: unable to access 'https://github.com.cnpmjs.org/XXX/XXX.git/': server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none

报错,说证书校验有问题

解决方法是加一个环境变量:

Linux下:

export GIT_SSL_NO_VERIFY=1

windows下:

set GIT_SSL_NO_VERIFY 1

或者在git的配置文件中添加

git config --global http.sslVerify false
  • 15
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值