unable to access 'https://github.com/infiniflow/ragflow.git/': GnuTLS recv error (-110): The TLS connection was non-properly terminated.
时间: 2025-01-09 10:47:20 浏览: 3
### 解决 GitHub 克隆仓库时遇到的 GnuTLS 收发错误 -110
当尝试通过 HTTPS 协议克隆 GitHub 仓库时,如果网络环境不稳定或防火墙设置严格,可能会遇到 `GnuTLS recv error (-110): The TLS connection was not properly terminated` 错误[^1]。
#### 方法一:更新 Git 和 GnuTLS 库版本
确保本地安装的是最新版 Git 及其依赖库。旧版本可能存在已知的安全性和兼容性问题。可以通过包管理器升级软件:
对于基于 Debian/Ubuntu 的 Linux 发行版:
```bash
sudo apt-get update && sudo apt-get install git gnupg2
```
对于 RedHat/CentOS/Fedora 用户:
```bash
sudo yum upgrade git gnutls
```
#### 方法二:切换到 SSH 访问方式
HTTPS 方式的连接容易受到中间人攻击影响,在某些情况下不如 SSH 安全可靠。可以考虑改用 SSH URL 来代替默认的 HTTPS 地址:
先配置好本机的 SSH 密钥对并添加至 GitHub 账户下,之后修改远程仓库地址为 ssh 形式:
```bash
git remote set-url origin git@github.com:<用户名>/<项目名>.git
```
#### 方法三:临时禁用 SSL 验证 (不推荐用于生产环境)
仅作为调试手段而非长久之计,可通过如下命令绕过证书校验过程来完成操作:
```bash
GIT_SSL_NO_VERIFY=true git clone https://github.com/<用户名>/<项目名>.git
```
请注意此方法存在安全隐患,建议只在测试环境中使用,并尽快寻找根本解决方案。
阅读全文