在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 了

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

参考资料

相关推荐
SH的全栈笔记9 小时前
敲下 git add 的那一刻,.git 里多了什么
git·后端
bu_shuo10 小时前
删除Windows资源管理器左侧【此电脑】的Linux企鹅图标
linux·windows
清水白石00811 小时前
Python 安装与环境配置:Windows、macOS、Linux 完整指南(第2集)
windows·python·macos
木卫二号Coding11 小时前
关闭-Windows10文件资源管理器-预览窗格-有效
windows
Moshow郑锴11 小时前
GCP MIG 重建后 Ansible 初始化实战:PowerShell + NSSM 挂载 Windows 服务
windows·ansible
染指111012 小时前
160.Agent-LangGraph-自定义主管架构智能体
人工智能·windows·microsoft·langchain·1024程序员节·agents
正经教主12 小时前
【FDE系列】阶段2:Day 45(up详细版):综合实战 — Docker + Nginx + Git 完整部署与本周收官
人工智能·git·nginx·docker·fde
꧁坚持很酷꧂12 小时前
Windows10电脑通过Xftp传输文件给Windows平板
windows·电脑
说实话起个名字真难啊12 小时前
windows server 2022安装winget方法
windows
阿尼卡~1 天前
VS Code 配置 C 语言开发环境(Windows 10/11):从 GCC 安装到运行、断点调试,一篇搞定
c语言·开发语言·windows