在Windows上将git与ssh-agent搭配使用,再也不用输入git密码了

前言

之前的文章中已经解决了 Windows 上的 SSH 登录的问题,成功把 Windows 上的 ssh-agent 用起来了,详情可以看这篇文章: 在 Windows 10 上实现免密码 SSH 登录

不过使用 git 还是会反复提示输入私钥密码,烦得很

原因也很简单,打开 git bash 运行一下命令测试就知道了

bash 复制代码
$ ssh-add -l
Could not open a connection to your authentication agent.

就是 git 里用的 ssh 是它自带的,不是 Windows 系统的那一个,应该是为了兼容性考虑吧,毕竟之前 Windows 是没有 ssh 的

那么解决思路也很简单,只要配置 git 使用 Windows 的 SSH 就行了

配置

一行代码搞定

powershell 复制代码
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 了

如果有遇到类似问题的同学,可以参考一下。

参考资料

相关推荐
jingshaoqi_ccc5 小时前
windows 10系统下QT的安装及在Visual studio中的扩展安装
windows·qt·visual studio
东北甜妹9 小时前
GitLab配置步骤
git
東雪木10 小时前
泛型、反射、注解(Spring 框架核心底层)专属复习笔记
java·windows·笔记·学习·spring
sun00770012 小时前
Windows下UniGetUI,Linux下敲命令
windows
流星白龙12 小时前
【MySQL高阶】18.缓冲池页管理
数据库·windows·mysql
恋喵大鲤鱼12 小时前
git add
git·git add
AI行业学习13 小时前
PuTTY 工具下载部署、基础配置及 SSH 远程服务器连接完整操作指南Windows 平台 【2026.6.1】
运维·windows·ssh
jiayong2313 小时前
CI/CD深度解析01-核心概念与原理
运维·git·ci/cd
天麓14 小时前
git 切换用户和邮箱的方法
git
tealcwu14 小时前
【Unity实战】Unity IAP 4.x 在 Windows Store (UWP) 平台上的实现指南
windows·unity·游戏引擎