[git]解决GnuTLS recv error (-9) 方案验证有效

说明

场景: ubuntu系统自带的git 直接拉去https://gitee.com仓库时,如果仓库过大,经常下载到一半出现GnuTLS报错,网上查阅并没有太多有价值东西,都是各处复制粘贴,甚至有奇奇怪怪的教程,比如重装git????? 我一脸的疑惑。

git所有配置都会存放在用户目录下的**.gitconfig**文件里,当前我的配置如下,但是并没有什么卵用,重装为最新的也不能解决

[safe]
	directory = /mnt/d/workspace/openharmony/device_board_bearpi
[user]
	name = XXXlus
	email = XXX@outlook.com
[credential]
	helper = store
[http]
	postBuffer = 524288000
	sslVerify = false
	lowSpeedLimit = 0
[https]
	postBuffer = 524288000
	sslVerify = false

[core]
	compression = -1

更改buffer 也许在某些场景下有用,但是在当前 错误码(-9)是没用的,

有效的解决方案

根据多方资料查证,有人说更换GnuTLS,原因在于他的问题,感觉这个是说的方向是对的,也有人说https更换成git 但是我尝试直接无效,那么从这个方向看,那就是想办法绕过GnuTLS的方向。
已知gitee.com拉取openharmony/docs.git代码方式提供两种

  1. git clone --depth=1 https://gitee.com/openharmony/docs.git
  2. git clone --depth=1 git@gitee.com:openharmony/docs.git

当前使用 https 会报错,那就使用 第二种方式拉取资料

  • 创建创建gitee.com账号并登录
  • 客户端生成 sshkey,并将 ssh公钥 加入到gitee账户下:设置->安全设置->ssh公钥
  • ssh -T git@gitee.com 命令测试是否配置成功
  • 使用第二种方式命令拉取代码便不再报错

gitee.com上配置ssh官方资料地址 https://gitee.com/help/articles/4181

最后

我在成功克隆到docs.git后 又把之前所有无效的配置全部恢复默认,仍然能够正常克隆,证实此方案的有效性。
.gitconfig文件移除众多无效配置

[safe]
	directory = /mnt/d/workspace/openharmony/device_board_bearpi
[user]
	name = XXXlus
	email = XXX@outlook.com
[credential]
	helper = store

简单介绍
safe: git本地地址,写入到这里的才能在文件夹中使用git命令
user: 用户的个人信息配置,必要的 可以与网站不一致
credential: 启用密码保存

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值