Git系列讲解(六):Git使用中的问题汇总

这篇博客介绍了在使用Git时遇到的几个常见问题及其解决方案,包括`The TLS connection was non-properly terminated`错误、因网络速度慢导致的下载失败、GitHub克隆速度慢以及SSH权限问题。解决方法包括取消代理、更改镜像源、配置DNS、关闭SSL验证以及修改SSH配置等。此外,还提供了提高GitHub克隆速度的两种方法:使用国内镜像或修改hosts文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

记录一下使用过程中可能会出现的问题,有问题就随时更新

The TLS connection was non-properly terminated

问题一:
(1) 问题描述:
git clone使用时出现“unable to access ‘https://github.com/smartdevicelink/sdl_core/’: gnutls_handshake() failed: The TLS connection was non-properly terminated.”

(2) 解决方法:
取消代理即可解决
git config --global --unset https.https://github.com.proxy
git config --global --unset http.http://github.com.proxy

问题二:
(1) 问题描述:
下载安装nvm的时候由于网速的原因出现如下问题:

sun@ubuntu:~/myProject/generic_hmi$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | 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:01:00 --:--:--     0
curl: (35) gnutls_handshake() failed: The TLS connection was non-properly terminated.

(2) 解决方法:更改镜像地址,可以提高网速

sun@ubuntu:~/myProject/generic_hmi$ export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node

error: RPC failed; curl 56 GnuTLS recv error (-54): Error in the pull function.

(1) 问题描述:
从github上git clone速度太慢,也就几十KiB/s,进而导致失败

sun@ubuntu:~/myProject$ git clone https://github.com/smartdevicelink/sdl_core
正克隆到 'sdl_core'...
remote: Enumerating objects: 282423, done.
error: RPC failed; curl 56 GnuTLS recv error (-54): Error in the pull function.
fatal: The remote end hung up unexpectedly
fatal: 过早的文件结束符(EOF)
fatal: index-pack failed

(2) 解决方法:
方法一(推荐使用):
使用Github的国内镜像网站。
https://kkgithub.com/

例如:

git clone https://github.com/smartdevicelink/sdl_core.git 
变更为
git clone https://kkgithub.com/smartdevicelink/sdl_core.git 

方法二:
我们都知道网络访问的流程包含很多个步骤,在这其中的DNS解析需要花一定时间,所以可以考虑将域名和ip的映射放到hosts文件中,这样也就避免了域名通过DNS服务器去解析而花费较长时间,进而提高网速。

git clone需要的域名主要有两个:github.com 和 github.global.ssl.fastly.net,分别使用nslookup github.comnslookup github.global.ssl.fastly.net进行查看
在这里插入图片描述
然后将上面的域名和ip映射关系加入到/etc/hosts文件中(注意使用sudo打开),如下图所示
在这里插入图片描述


fatal: unable to access ‘xxx’: server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none

可能的原因是网站的ssl证书没有经过相应机构签署,导致验证的时候报错了。不过如果我们确认代码平台是安全的,可以将ssl证书验证暂时关闭,关闭方法如下:

方法一:设置环境变量GIT_SSL_NO_VERIFY为true
export GIT_SSL_NO_VERIFY=true

方法二(推荐):使用git命令配置变量http.sslVerify为false
git config http.sslVerify "false"  #这里设置为局部变量,如果想配置全局的在"git config"后面加上"--global"即可

这里比较推荐方法二,因为是局部变量,所以只对当前仓库生效,避免了潜在安全风险的进一步扩大

sun@192.168.1.21: Permission denied (publickey).

问题描述:
之前都是好用的,ubuntu从18.04升级到22.04后,执行git或者repo同步服务器代码时,碰见了这个问题。经过调查,原因是ubuntu22.04用的ssh是OpenSSH_8.9p1,这个版本的ssh取消了rsa加密算法,导致服务器匹配秘钥失败而报了这个错误。

解决方法:
修改/etc/ssh/ssh_config,添加如下内容

PubkeyAcceptedAlgorithms +ssh-rsa
### 科金数据库安装过程中初始化数据库时遇到的错误解决方案 当在Windows环境中尝试安装KingbaseES V8并选择系统盘(C盘)作为默认安装路径(`C:\Program Files`),可能会遭遇初始化数据库错误,从而导致整个安装过程失败[^1]。 #### 可能的原因分析 该问题的主要原因可能在于权限不足或特定目录下的访问控制列表(ACLs)设置不当。由于`C:\Program Files`是一个受保护的位置,默认情况下只有管理员账户拥有完全控制权,而某些子文件夹甚至对管理员也施加了额外限制。这可能导致安装程序无法正常创建必要的文件结构或执行所需的初始化操作。 #### 推荐的解决方法 为了避免上述提到的问题,建议采取以下措施之一: - **更改安装位置** 将目标安装路径更改为其他非受限磁盘分区上的自定义文件夹,比如D盘中的某个指定文件夹。这样做可以绕过因权限引起的潜在障碍,并提高成功的几率。 - **提升命令提示符权限** 如果坚持要在`C:\Program Files`下完成安装,则需确保是以超级用户身份运行安装向导。具体做法是在启动安装包之前右键点击它并选择“以管理员身份运行”。此外,在实际开始安装前关闭所有不必要的应用程序和服务,减少干扰因素。 对于已经成功安装但在SQL语句处理上出现问题的情况,可以通过调整Kingbase数据库配置来解决问题。例如,针对单双引号及GROUP BY使用的差异,修改相应的配置参数能够有效改善兼容性[^2]。 ```bash # 修改kingbase.conf配置文件示例 vi /path/to/your/database/conf/kingbase.conf ``` 通过编辑此配置文件内的相关选项,可实现对不同SQL标准的支持程度调节,进而克服由语法不一致带来的挑战。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星际工程师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值