git一些报错解决方法[每一项都亲测,保证不踩坑]

最近工作中版本管理从svn切换到git,遇到过一些问题,在这里把遇到的问题记下来,希望能够对大家有帮助,每个问题和解决方法都是本人亲测实用,如有问题,欢迎讨论。

error: RPC failed; curl 56 GnuTLS recv error (-110): The TLS connection was non-properly terminated.

这个问题折腾了我挺长时间,在网上看到很多解决方案,但是百分之九十以上的都是坑,一点用没有,可能是对我来说没有用,最终找到一个靠谱的解决方案,亲测可用,希望减少大家踩坑。

原文链接

1. 首先安装一些必要的环境和依赖

mkdir ~/git-rectify

如果想隐藏目录,不想在/home下可见,也可以把目录名改为 .git-rectify

mkdir ~/.git-rectify

3. 进入路径,获取git的源文件

cd ~/git-rectify
apt-get source git

4. 安装依赖

sudo apt-get build-dep git

5. 安装libcurl的依赖文件

sudo apt-get install libcurl4-openssl-dev

6. 进入目录(原链接中这里有错误,不需要解压步骤)

cd git-2.17.1/

路径名后面2.*是版本号,需要看一下自己的版本

7. 修改文件内容,需要修改两个文件

vim ./debian/control    # 把libcurl4-gnutls-dev 修改为 libcurl4-openssl-dev
vim ./debian/rules      # 把TEST=test整行删除

8. 编译和构建安装包

sudo dpkg-buildpackage -rfakeroot -b

9. 退回上一级目录,安装编译好的安装包

cd ..
sudo dpkg -i git_2.17.1-1ubuntu0.4_amd64.deb

完成以上步骤即可解决error: RPC failed; curl 56 GnuTLS recv error (-110): The TLS connection was non-properly terminated问题。

server certificate verification failed

先贴上找到解决方案的连接

原文链接

用git进行clone时提示“服务器验证失败”,在命令行下输入:

export GIT_SSL_NO_VERIFY=1

这样就可以了,但是这样每次启动shell又失效了,不是永久性的,如果想永久有效,可以把命令加入bashrc中:

vi ~/.bashrc
# 在空白处添加
export GIT_SSL_NO_VERIFY=1
# 保存退出,重新加载
source ~/.bashrc

本文后续会持续更新,不断加入不同问题的解决方案,如果感兴趣可以关注下方微信公众号或头条号,感谢支持,可以访问链接查看详细介绍点击这里

git一些报错解决方法[每一项都亲测,保证不踩坑]
git一些报错解决方法[每一项都亲测,保证不踩坑]