需要 SSH 的 Git 功能在 Cygwin 上被破坏

需要 SSH 的 Git 功能在 Cygwin 上被破坏

在 Cygwin 上,运行git clone git@...git pullgit push(其中远程是 SSH 存储库地址)会失败。以下是运行的输出git clone

Cloning into 'iko-app-rocket'...
fatal: cannot run C:\Users\sakynimoD\scoop\apps\openssh\current\bin\ssh.exe: No such file or directory
fatal: unable to fork

正如你从路径中看到的,我用过,Windows 包管理器。我用它来安装 Gradle,它还安装了一些其他东西作为依赖项,包括 ssh。我已经按照推荐的方式卸载了 scoop 及其安装的所有软件包,但错误仍然存​​在。

一种解决方法是声明 git 应该使用sshSSH 的可执行文件,这听起来很多余,但显然不是:env GIT_SSH=ssh git pull有效。

答案1

既然您发现显式设置GIT_SSH=ssh有效,那么接下来要调查的是它是否已经设置(可能是通过 scoop 设置的)。您可以通过运行来检查echo "$GIT_SSH",也可以通过运行env来显示整个环境。

如果已设置,则可能来自 Windows 的环境变量设置或.bashrc类似的设置。

相关内容