让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
从而引发错误。