git push卡住以及等待很久之后出现 GnuTLS recv error (-54)与 GnuTLS recv error (-110)两种报错

git push --progress
Username for 'https://gitee.com': [email protected]
Password for 'https://[email protected]@gitee.com': 
Enumerating objects: 8699, done.
Counting objects: 100% (8699/8699), done.
Delta compression using up to 8 threads
Compressing objects: 100% (7068/7068), done.
Writing objects: 100% (8699/8699), 38.01 MiB | 249.52 MiB/s, done.
Total 8699 (delta 1360), reused 8699 (delta 1360)

其实到了Total这一步就会卡死,长时间等待就会得到下面的情况
error: RPC failed; curl 56 GnuTLS recv error (-54): Error in the pull function.
fatal: the remote end hung up unexpectedly
fatal: the remote end hung up unexpectedly
Everything up-to-date

尝试过程:

另外新开一个终端:

git config --global http.postBuffer 524288000(500*1024*1024,所以是500MB的意思)

再次git push得到:

[git error] RPC failed; curl 56 GnuTLS recv error (-110)

最终解决方案:

~/.bashrc中开启git的调试模式

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

 

然后再次git push,得到信息:

发现上面的proxy信息:127.0.0.1:10808

关闭proxy设置:

git config --global --unset http.proxy

git config --global --unset https.proxy

最后再次git push,成功.

该测试成功的repository大小为:

12705 項目,總共 304.1 MiB (318,840,630 位元組)

发布了785 篇原创文章 · 获赞 357 · 访问量 166万+

猜你喜欢

转载自blog.csdn.net/appleyuchi/article/details/105084484