在Windows上将git与ssh-agent搭配使用
Windows git 还自带 ssh?真是老土的兼容性思路。一行配置就能解决,不过得先管好 ssh-agent 的连接。 ProxyCommand 居然又添乱,难怪老出毛病。
目录4 个章节
前言
之前的文章中已经解决了 Windows 上的 SSH 登录的问题,成功把 Windows 上的 ssh-agent 用起来了,详情可以看这篇文章: 在 Windows 10 上实现免密码 SSH 登录
不过使用 git 还是会反复提示输入私钥密码,烦得很
原因也很简单,打开 git bash 运行一下命令测试就知道了
$ ssh-add -l
Could not open a connection to your authentication agent.
就是 git 里用的 ssh 是它自带的,不是 Windows 系统的那一个,应该是为了兼容性考虑吧,毕竟之前 Windows 是没有 ssh 的
那么解决思路也很简单,只要配置 git 使用 Windows 的 SSH 就行了
配置
一行代码搞定
git config --global core.sshCommand "'C:\Windows\System32\OpenSSH\ssh.exe'"
有问题?
一开始我配置完了运行老是出错
CreateProcessW failed error:2
posix_spawnp: No such file or directory
后面加了 -v 参数才发现是我的 ~/.ssh/config 里的配置
之前配置了 GitHub 走代理
Host github.com
User git
Port 443
HostName ssh.github.com
TCPKeepAlive yes
ProxyCommand "$HOME/scoop/apps/git/current/mingw64/bin/connect.exe -S 127.0.0.1:7890 -a none %h %p"
之前在 git 自带的 ssh 环境下运行没问题,但现在用了 Windows 的 ssh 反而不行了,于是把这个 ProxyCommand 配置注释掉,就 OK 了
如果有遇到类似问题的同学,可以参考一下。
参考资料
_EOF_
在Windows上将git与ssh-agent搭配使用
- 本文作者:
- 程序设计实验室
- 版权声明:
- 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
相关文章
使用twinkle-tray快捷调整多个显示器的亮度
自从安装了这个小工具,我再也没用过笔记本键盘上的快捷键了~
2025-01-26 · Windows · 约 1 分钟
在 Windows11 上启用 ssh-agent
微软的坑真多!!!
2026-08-25 · Windows · 约 1 分钟
从SSH远程到Git Push:在Windows上一步到位实现免密码登录
我一直希望在Windows上能像在Linux系统中那样,通过SSH密钥实现免密码远程连接。每次远程连接到服务器时,手动输入密码既麻烦又不太安全,尤其是在我需要频繁操作的情况下。
2025-02-10 · Windows · 约 1 分钟
WSL小技巧:切换到zsh以及加入右键菜单
切换到zsh 说明 在 Windows Subsystem for Linux 中,执行 chsh -s /bin/zsh 并不能成功地将默认 shell 修改为 zsh。在打开 WSL 时,默认 shell 仍然为 bash。 这是因为WSL 在启动时并没有执行 login 相关的组件,而这些组件和默认 shell 有关。Microsoft 已经知晓了这个问题,但并没有计划去解决。 方法 我们可
2021-12-18 · Windows · 约 1 分钟
讨论
共 0 条加载评论中…