windows中git无法通过ssh连接github
1 问题描述
在windows中,使用ssh-keygen -t rsa -C "<your-email>@qq.com"
生成ssh公钥和私钥,并按照要求将公钥添加到github中。此时,使用命令ssh -T git@github.com
可以得到正确输出Hi xxx! You've successfully authenticated, but gitHub does not provide shell access.
,但是使用git通过ssh克隆仓库失败。
2 问题原因
git捆绑了自己的ssh可执行文件,windows也捆绑了一个ssh可执行文件。
在gitbash中输入which ssh
可以获取git中ssh可执行文件的路径,一般为/usr/bin/ssh
。
在PowerShell中输入Get-Command
可以获取windows中ssh可执行文件的路径,一般为C:\windows\System32\OpenSSH\ssh.exe
。
在windows执行ssh -T git@github.com
时和使用git克隆仓库时,二者调用了不同的ssh可执行文件,最后导致一个成功但另一个失败。
3 解决方法
在命令行中执行以下命令:git config --global core.sshCommand C:/windows/System32/OpenSSH/ssh.exe
。
这将提示所有git
命令使用与您的ssh
命令相同的 SSH 客户端。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律