错误:无法运行ssh:尝试在Windows上克隆时没有此类文件或目录

时间:2012-09-24 17:09:53

标签: windows git git-flow

我试图在Windows上克隆一个远程存储库,所以当我这样做时:

git clone git@github.com:organization/xxx.git

我收到了这个错误:

error: cannot run ssh: No such file or directory
fatal: unable to fork

我错过了什么吗?提前完成。

5 个答案:

答案 0 :(得分:20)

您没有安装ssh(或者在搜索路径中没有安装ssh)。

您也可以通过http从github克隆:

git clone http://github.com/organization/xxx

答案 1 :(得分:5)

检查您是否安装了ssh-client。这解决了docker机器上的问题,即使存在ssh密钥:

apt-get install ssh-client

答案 2 :(得分:3)

您的GIT_SSH_COMMAND很可能引用了错误的公钥。

尝试:

export GIT_SSH_COMMAND="ssh -i /home/murphyslaw/.ssh/your-key.id_rsa

然后

git clone git@github.com:organization/xxx.git

答案 3 :(得分:2)

我知道这是一个老话题,但最近遇到了这个问题,我想把我解决的问题带到这里。


在这些情况下您可能会遇到此错误:

  • 您使用这样的网址:git@github.com:organization/repo.git
  • 你直接运行这样的命令:git clone git@github.com/xxxxx.git 而你没有 ssh 客户端(或者它不在路径上)
  • 或者您安装了 ssh 客户端(并且 git clone xxx.git 在直接命令行上工作正常)但是当您通过 shell 脚本文件运行相同类型的命令时

这里,我假设您不想将协议 ssh git@ 更改为 http:// (git@github.com:organization/repo.git -> http://github.com/organization/repo.git),就像我的情况一样,因为我需要 ssh 格式。


所以,

  • 如果你没有ssh客户端,首先你需要安装它
  • 如果只有在通过脚本执行时才会出现此错误,那么您需要在 git 命令前面使用公共 ssh 密钥设置 GIT_SSH_COMMAND 变量,如下所示:
<块引用>

GIT_SSH_COMMAND="/usr/bin/ssh -i ~/.ssh/id_rsa" git pull

(根据您的情况随意更改)

答案 4 :(得分:0)

我的防病毒软件将cygwin ssh二进制文件移至病毒库并在恢复后将其恢复。

症状:

  • SSH似乎已正确安装
  • SSH可以从命令行运行而没有问题

在这种特殊情况下,重新安装ssh之前的另一种选择:检查ssh命令权限

$ ls -al /usr/bin/ssh.exe
----rwxrwx+
$ chmod 770 /usr/bin/ssh.exe