Windows下Git SSH克隆报错:'git@github.com'不是Git命令
git@github.com被识别为无效命令的问题 看起来你的SSH连接本身是正常的(ssh -v git@github.com能成功),但Git在解析SSH地址的时候出了问题,把git@github.com当成了子命令而不是远程地址的一部分。下面是几个大概率能解决问题的步骤:
1. 检查并重置Git的remote.sshCommand配置
这个配置如果被错误设置,会导致Git调用SSH时出现异常。先查看当前配置:
git config --global --get remote.sshCommand
如果输出不是空,或者是类似git@github.com这种奇怪的内容,就把它清空:
git config --global --unset remote.sshCommand
如果是单个仓库的问题,去掉--global参数,在仓库目录下执行即可。
2. 检查系统环境变量
Windows的环境变量GIT_SSH或GIT_SSH_COMMAND如果被错误设置,也会干扰Git的SSH调用:
- 打开命令提示符,输入以下命令查看变量值:
echo %GIT_SSH% echo %GIT_SSH_COMMAND% - 如果输出不是预期的SSH路径(比如
C:\Windows\System32\OpenSSH\ssh.exe或者Git自带的ssh路径),就删除对应的环境变量:- 右键“此电脑” → “属性” → “高级系统设置” → “环境变量”
- 在用户或系统变量里找到对应的变量,删除即可。
3. 修正SSH URL格式(针对你尝试的ssh://写法)
你之前用的ssh://git@github.com:math-gallou/AI21_TPs.git格式有误,ssh://协议下应该用斜杠分隔主机和仓库路径,而不是冒号。正确的写法是:
git clone ssh://git@github.com/math-gallou/AI21_TPs.git
不过既然你用标准的git@github.com:math-gallou/AI21_TPs.git格式也报错,这个可能不是核心问题,但可以试试这个正确格式。
4. 尝试更新Git版本
你当前使用的Git v2.29.2.2是2020年的版本,可能存在一些已知的SSH解析小bug。可以下载最新版的Git for Windows安装后再尝试克隆操作。
如果以上步骤都试过还是不行,可以再检查一下Git的core.sshCommand配置(和remote.sshCommand不同,这个是全局的SSH命令配置):
git config --global --get core.sshCommand
如果有异常值,同样用git config --global --unset core.sshCommand清空。
内容的提问来源于stack exchange,提问作者mathoug

