Git无法连接GitHub求助:本地操作正常,远程操作全部失败
解决Git无法连接GitHub的问题
排查方向与解决方案
1. 检查Git SSL证书配置
Git通过HTTPS连接GitHub时依赖SSL证书验证,若证书存储异常会导致连接失败。可先临时关闭SSL验证测试:
git config --global http.sslVerify false
若测试有效,说明是证书问题,可将系统根证书导入Git的证书存储(路径根据实际系统调整):
git config --global http.sslCAInfo "C:\Windows\System32\certificates\root\ca-bundle.crt"
2. 排查安全软件拦截
部分防火墙、杀毒软件会拦截Git的网络请求(即使ping和tracert正常)。临时关闭这类软件后测试Git操作,若恢复正常,需将Git程序(通常在C:\Program Files\Git\bin\git.exe)添加到安全软件白名单。
3. 强制指定HTTP版本
Git默认使用HTTP/2,部分网络环境对HTTP/2支持不佳,可强制切换到HTTP/1.1:
git config --global http.version HTTP/1.1
之后重新测试克隆或推送操作。
4. 清理局部代理残留配置
虽然已取消全局代理,但可能存在单个仓库的代理配置:
# 检查当前仓库代理设置 git config --local --get http.proxy # 若有输出则清除 git config --local --unset http.proxy
同时检查Windows系统代理:打开「设置」→「网络和Internet」→「代理」,确保自动检测和手动代理均已关闭。
5. 启用Git调试日志定位细节
开启调试日志获取更详细的连接错误信息,便于定位具体问题:
GIT_CURL_VERBOSE=1 git clone https://github.com/user/repo.git
日志会显示curl请求的完整流程,可从中找到SSL握手、端口连接等环节的异常。
6. 手动绑定GitHub IP与端口
在C:\Windows\System32\drivers\etc\hosts文件中添加:
140.82.114.4 github.com
保存后刷新DNS缓存:
ipconfig /flushdns
再尝试指定端口克隆仓库:
git clone https://github.com/user/repo.git --config http.postBuffer=524288000
内容的提问来源于stack exchange,提问作者Frank Ayra
相关产品推荐
相关产品推荐

