让VS Code中的Git使用Windows自带的OpenSSH并开启证书验证Agent

从Windows 10开始,系统提供了自带的OpenSSH客户端,方便了远程服务器维护。

【开启方法】类似Linux子系统和Hyper-V虚拟平台,需要在“设置->应用->可选功能”中勾选OpenSSH客户端。

虽然OpenSSH直接就能用了,但自带的私钥管理功能却默认禁用,导致类似KeePassXC之类的软件无法添加私钥。

【解决方法】在服务中开启"OpenSSH Authentication Agent"服务即可。

另外,用VS Code编程时,这个Agent不会被采用。这点尤其影响Git通过SSH访问repo。

Agent不被采用的原因:VS Code额外自带了一个SSH客户端,需要让Git切换成Windows自带的客户端。

切换命令为:

git config --global core.sshcommand "C:/\Windows/\System32/\OpenSSH/\ssh.exe"

如果无需设置成全局生效,则去掉--global

注意路径中的\需要用/来escape一下,否则会被识别为C:WindowsSystem32OpenSSHssh.exe从而引发错误。