背景

为什么说这是最好的解决办法?因为一般搜索这种git的错误,网上往往都是给出一两句命令,或者提示修改一两个参数。然后往往需要查看十几篇关于这种错误的文章,逐个逐个办法去尝试。而且往往还不一定能够解决问题。所以本文,打算讲述一个更有效更彻底的办法。

一、开启调试信息

参考文章
On Linux(在命令行窗口执行)

export GIT_TRACE_PACKET=1
export GIT_TRACE=1
export GIT_CURL_VERBOSE=1

On Windows(在git命令行执行)



set GIT_TRACE_PACKET=1
set GIT_TRACE=1
set GIT_CURL_VERBOSE=1

二、把详细信息打印出来

一般来说,执行 git clone 或者 git push之类的命令,都会输出一些信息。但是这些信息往往是比较简单的,会隐藏掉一些细节。但是这些细节往往对我们解决git 错误很有帮助。
1. 执行完上面所说的那几个开启调试信息的命令。

  1. 执行push
git push -v
  1. 运行输出
    例如我这里的输出是
RPC failed; result=56, HTTP code = 0
GnuTLS recv error (-9): A TLS packet with unexpected length was received

如果不开启调试信息,可能只会看到第一行。第二行的关键信息被隐藏了。



三、根据错误信息进一步搜索解决方案

  1. 根据上面的错误详细信息在google搜索。
GnuTLS recv error (-9): A TLS packet with unexpected length was received
  1. 得到的解决方案是:
ifconfig eth0 mtu 1400
GIT_CURL_VERBOSE=1
apt-get install stunnel4
  1. 尝试一下
updating local tracking ref 'refs/remotes/origin/master'
Everything up-to-date

成功了。



http://xzh.i3geek.com

爱唠叨的老鱼

爱唠叨的老鱼

技术经理,个人站长,创业者

0 条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据