git-repo系列教程(3) git-repo https证书认证问题

文章目录

问题描述

在使用git repo 同步仓库时,发现不能同步,出现如下提示错误:

bash 复制代码
    % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
    Dload  Upload   Total   Spent    Left  Speed
     0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
     0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0

curl: (60) SSL certificate problem: self-signed certificate in certificate chain, More details here: https://curl.se/docs/sslcerts.html.
curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. 
To learn more about this situation and how to fix it, please visit the web page mentioned above.

根据提示,阅读网页: https://curl.se/docs/sslcerts.html

发现最好的办法是把证书下载下来,设置环境变量.

解决步骤

1.下载证书

bash 复制代码
# -k 跳过证书验证
# -w %{certs} 抽取服务器端的证书
# > cacert.pem 把证书存储到文件中
curl -k  -w %{certs} https://xxx/ > cacert.pem

#证书内容在 "-----BEGIN CERTIFICATE-----"和"-----END CERTIFICATE-----"
#删除其他内容,只保留
#"-----BEGIN CERTIFICATE-----"
#xxxxx
#xxxx
#"-----END CERTIFICATE-----"

2.测试证书是否正常

bash 复制代码
#指定证书文件
curl --cacert cacert.pem -w %{certs} https://xxxx/
#发现可以下载页面

3.设置环境变量

bash 复制代码
#把证书文件放在家目录下
mkdir ~/cacert
mv cacert.prm ~/cacert/
vim ~/.bashrc
	export CURL_CA_BUNDLE="/home/lin/cacert/cacert.prm"
source ~/.bashrc
#注意'CURL_CA_BUNDLE'需要设置绝对路径

总结

这个问题在网上很少遇到,搜索了几天也没有搜索到答案,看一下提示文档很容易解决了.

git-repo是android系统代码使用的源代码管理工具,不做安卓的很少使用,国内资料相对也很少.但是这个工具非常强大,对大型项目多个git仓库的管理非常方便.

相关推荐
qq_589568106 小时前
springbootweb案例,出现访问 http://localhost:8080/list 一直处于浏览器运转阶段
java·网络协议·http·list·springboot
历程里程碑8 小时前
4 Git远程协作:从零开始,玩转仓库关联与代码同步(带实操代码讲解)
大数据·c++·git·elasticsearch·搜索引擎·gitee·github
金銀銅鐵11 小时前
[git] 浅解 git reset 命令
git·后端
zhangfeng113311 小时前
部署到服务器上 宝塔系统 使用宝塔在线编辑器 FTP 批量上传 Git 部署 打包上传 codebudyy 编程程序开发
服务器·git·编辑器
学习是种信仰12 小时前
Git工作流
git·深度学习
凯瑟琳.奥古斯特13 小时前
DNS解析全流程详解
网络·网络协议
Yupureki13 小时前
《Linux网络编程》5.HTTPS协议
linux·网络·https
yuanyuan2o214 小时前
Git merge 的几种不同模式
git·github
视觉小萌新14 小时前
关于Vscode配置企业Git
git
zh_xuan14 小时前
使用命令行把安装包上传到github
c++·git·libcurl·c++工程打包