解决git push提交超时问题ssh: Connection timed out

ssh的连接方式 git push 时报错信息

git push时失败,连接到主机github.com端口22,连接超时

js 复制代码
git push origin main:main
ssh: connect to host github.com port 22: Connection timed out
fatal: Could not read from remote repository.

ps:

git-push原点main:main
ssh:连接到主机github.com端口22:连接超时

致命:无法从远程存储库中读取。

请确保您拥有正确的访问权限并且存储库存在。

百度解决方案

  • 重新生成ssh密钥
  • 修改git用户邮箱设置
  • 删除 known_hosts 中有关 Github相关行

大部分csdn解决方法是说需要重新生成ssh密钥,但我前几天刚提交过代码的,ssh密钥肯定是没问题的!

问题原因

出现这个问题,很可能是你的网络供应商(比如广电网)在出口防火墙上屏蔽了22端口(本地使用vpn等代理服务),这意味着你将无法访问其他主机的22端口。

github提供了一种解决方案,允许你使用443端口进行ssh连接

因为443端口是访问https网站 所必须的,大部分防火墙都会允许通过,但如果使用代理服务器可能产生干扰。

解决方案

方法1

放弃使用 ssh 连接方式,换成 https连接。删除关联的远程库,更换为https的连接方式进行远程库的关联

ssh切换http

arduino 复制代码
git remote set-url origin https://github.com/xxxgit    

http切换ssh

kotlin 复制代码
$ git remote set-url origin git@github.com:xxx.git 

方法2

终端运行如下命令:

css 复制代码
ssh -T -p 443 git@ssh.github.com

win10 找到配置文件 C:\Users\xxx\.ssh\config

添加配置,让你每次ssh连接github都通过443端口,指明ssh连接git@github.comgit@ssh.github.com走443端口

config文件添加如下内容:

sql 复制代码
Host github.com
Hostname ssh.github.com
Port 443
User git

重新执行,检查是否成功

css 复制代码
ssh -T git@github.com

成功如下:

此时进行 git push 发现可以成功了。

相关推荐
ywf121528 分钟前
前端的dist包放到后端springboot项目下一起打包
前端·spring boot·后端
恋猫de小郭35 分钟前
2026,Android Compose 终于支持 Hot Reload 了,但是收费
android·前端·flutter
badhope5 小时前
Mobile-Skills:移动端技能可视化的创新实践
开发语言·人工智能·git·智能手机·github
hpoenixf7 小时前
2026 年前端面试问什么
前端·面试
还是大剑师兰特7 小时前
Vue3 中的 defineExpose 完全指南
前端·javascript·vue.js
泯泷7 小时前
阶段一:从 0 看懂 JSVMP 架构,先在脑子里搭出一台最小 JSVM
前端·javascript·架构
zhangfeng11338 小时前
Windows 的 Git Bash 中使用 md5sum 命令非常简单 md5做文件完整性检测 WinRAR 可以计算文件的 MD5 值
人工智能·windows·git·bash
mengchanmian8 小时前
前端node常用配置
前端
华洛8 小时前
利好打工人,openclaw不是企业提效工具,而是个人助理
前端·javascript·产品经理
xkxnq8 小时前
第六阶段:Vue生态高级整合与优化(第93天)Element Plus进阶:自定义主题(变量覆盖)+ 全局配置与组件按需加载优化
前端·javascript·vue.js