使用git push推送代码到GitHub报443端口超时错误如何解决
Git推送GitHub 443端口超时解决方案
1 先排查基础网络连通性
打开Git Bash依次执行以下操作:
- 验证DNS解析是否正常:执行
nslookup github.com,如果返回的IP地址异常,可手动修改Windows hosts文件(路径C:\Windows\System32\drivers\etc\hosts)添加GitHub的有效解析记录。 - 验证443端口连通性:执行
telnet github.com 443,如果连接失败,优先尝试切换网络(比如使用手机热点)后再推送,排除当前办公网/家庭网的运营商封禁、路由限制问题。
2 切换SSH协议替代HTTPS推送
HTTPS协议大体积推送稳定性差,切换为SSH协议可解决多数大文件推送超时问题:
- 如果你已配置过GitHub SSH密钥,直接执行命令修改远程仓库地址:
git remote set-url origin git@github.com:你的GitHub用户名/对应仓库名.git - 未配置过SSH密钥的话,先执行
ssh-keygen -t ed25519 -C "你的GitHub绑定邮箱"一路回车生成密钥,再将C:\Users\你的系统用户名\.ssh\id_ed25519.pub的内容复制到GitHub账号的SSH密钥配置页,完成后再修改远程地址即可。
修改完成后重新执行git push -u origin main测试。
3 拆分提交降低单次推送体积
300MB的单次推送很容易触发超时,可拆分为多个小提交分批推送:
- 先撤销最近的未推送提交:
git reset --soft HEAD~1 - 将改动文件分为多批,每批依次执行
git add 目标文件、git commit -m "提交说明"、git push,降低单次推送的体积。
4 排查本地拦截规则
- 执行
git config --global --list检查代理配置残留,确认没有http.proxy、https.proxy相关配置,如有残留执行git config --global --unset http.proxy、git config --global --unset https.proxy彻底清空。 - 临时关闭Windows Defender防火墙、第三方杀毒软件后重试,排除安全工具拦截Git网络请求的可能。
内容的提问来源于stack exchange,提问作者Yu Yang
相关产品推荐
相关产品推荐

