我在 Windows 10 x64 上使用设置,通过 scoop 安装和管理 git,而不是自己下载和执行安装程序。通过 PowerShell,我跑了
scoop install git
scoop install openssh
[environment]::setenvironmentvariable('GIT_SSH', (resolve-path (scoop which ssh)), 'USER')
但是,现在当我尝试在Git Bash中运行命令时
git clone git@example.org:vendor/repository.git
或者一个简单的
git push/pull
我只得到
CreateProcessW failed error:193
ssh_askpass: posix_spawn: Unknown error
而不是 Git Bash 询问我的 SSH 密钥的密码。
我在许多其他 Windows 10 x64 上使用相同的设置(通过 scoop 安装的 git),并且没有出现任何问题。所以我不确定这个出了什么问题。我之前在同一台机器上安装了 git 而没有使用 scoop 并且 Git Bash 运行良好。在通过scoop重新安装之前,我完全卸载了 git(并且还重新启动了机器,只是为了确定)。
如果SSH_ASKPASS
相关,环境变量包含以下内容:
$ echo ${SSH_ASKPASS}
/mingw64/libexec/git-core/git-gui--askpass
不确定该文件夹指的是什么(大概是Git Bash内部的东西?),因为它显然不像我的机器上那样存在。
更新
当使用git-with-openssh
而不是单独使用时,它可以工作git
。openssh
但是,我不在我的其他机器上使用它,所以我仍然想知道为什么它在这里不起作用。