You need to enable JavaScript to run this app. 已在Github配置SSH密钥,命令行推送时出现SSH主机解析错误
优惠活动
大模型
产品
解决方案
定价
更多

已在Github配置SSH密钥,命令行推送时出现SSH主机解析错误

报错原因定位

你遇到的连接失败本质是SSH客户端的地址解析错误:从报错信息能看到,SSH尝试把包含冒号的非法字符串github.com:rongardF当成要连接的目标主机做DNS解析,这种带特殊符号的字符串根本无法被正常识别,所以直接抛出无法解析主机的错误。
触发这个问题的核心原因是你脚本里配置远程仓库地址时格式存在偏差,结合Windows批处理的运行逻辑,大概率是拼接SSH地址时把github.com后面必须带的分隔冒号写成了斜杠,导致SSH拆分地址片段时错位,把本应作为路径一部分的用户名拼到了主机名字符串里。

需要完成的配置修正与检查
  • 先修正远程仓库地址的书写格式
    SSH协议连接GitHub的标准地址格式是严格固定的:git@github.com:<你的用户名>/<仓库名>.git,要求github.com后面必须紧跟冒号做分隔,不能用斜杠代替。你可以把脚本里的远程添加行调整为正确格式,给变量加上引号避免特殊字符解析问题:
    git remote add origin "git@github.com:rongardF/%name%.git"
  • 提前验证SSH基础连通性
    不要直接跑完整脚本做推送,先在终端执行ssh -T git@github.com做连通性校验:如果配置正常,终端会输出欢迎语并显示你的GitHub用户名;如果这一步就报主机解析错误,说明问题出在本地SSH配置、网络DNS层面,和脚本逻辑无关。
  • 修正脚本里的Windows适配问题
    • Windows系统原生cmd环境没有内置touch命令,当前脚本里的touch README.md实际执行是失败的,换成原生命令创建空文件,比如type nul > README.md,避免后续提交时找不到目标文件
    • 当前你用“用户名+明文密码”的方式调用GitHub API创建仓库的写法已经失效,GitHub从2020年开始就不再支持密码做接口认证,需要替换成有仓库创建权限的个人访问令牌,不然创建仓库的步骤本身就会执行失败
    • 脚本里可以给curl步骤加返回值判断,如果创建仓库失败就直接终止流程,不要继续执行后续的git操作,减少排查成本

内容的提问来源于stack exchange,提问作者rongard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.31 14:54:03