参考链接:others-How to solve ‘gnutls_handshake() failed’ error when doing ‘git clone’ from github.com ?

Errors

在这里插入图片描述

Cloning into 'GlobalTrack'...
fatal: unable to access 'https://github.com/xxx.git/': 
error setting certificate verify locations:
CAfile: E:/dev/env/Git/mingw64/ssl/certs/ca-bundle.crt CApath: none

Solution #1(如果不行,直接看解决方案3,最后再考虑解决方案2)

前提,网络连接良好!

ping www.bing.com

PING china.bing123.com (202.89.233.100) 56(84) bytes of data.
64 bytes from 202.89.233.100 (202.89.233.100): icmp_seq=1 ttl=118 time=30.1 ms
64 bytes from 202.89.233.100 (202.89.233.100): icmp_seq=2 ttl=118 time=29.4 ms
64 bytes from 202.89.233.100 (202.89.233.100): icmp_seq=3 ttl=118 time=30.2 ms
^C
--- china.bing123.com ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5007ms
rtt min/avg/max/mdev = 29.437/29.986/30.198/0.259 ms

https 修改为 http

# git clone https://github.com/MasterBin-IIAU/Unicorn.git unicorn
git clone http://github.com/MasterBin-IIAU/Unicorn.git unicorn

Solution #2(暴力解决,不推荐使用)

git config --global http.sslverify "false"

Solution #3(指定证书的路径,推荐使用)

# 如果报 fatal: not in a git directory, 先执行 git init 命令
# git init
sudo git config --system http.sslCAinfo /etc/ssl/certs/ca-certificates.crt

注意:针对 Solution #2/3,如果修改之后仍然无法生效,kill 当前终端,重新打开一个运行 git clone,基本上就没有任何问题了!

写在最后

测试终端是否可以 使用魔法,

curl -vvvk https://www.google.com --connect-timeout 6

Linux 终端设置代理

export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890

Windows 终端代理设置

  • PowerShell
# 一般指设置 第二个 HTTPS_PROXY 即可
# 10809 改为你的代理软件的 http 端口
# Clash for Windows 一般为 7890,v2rayN 为 10809(socks+1)
$ENV:HTTP_PROXY = "http://127.0.0.1:10809"
$ENV:HTTPS_PROXY = "http://127.0.0.1:10809"
  • cmd
# 临时生效
set http_proxy=http://127.0.0.1:10809
set https_proxy=http://127.0.0.1:10809

若要永久生效,在环境变量中进行设置,然后重启终端即可。
在这里插入图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐