Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

"Cannot spawn ssh" when connecting to Github, but ssh -T [email protected] works?

I am having a hard time getting Github (+Netbeans to work).

I want to use ssh with git (on Windows 7) to, e.g., commit or clone a project, but I keep getting this error message :

$ git clone [email protected]:USER/PROJECTNAME.git error: cannot spawn C:\Program Files (x86)\Git\bin\ssh.exe: No such file or directory fatal: unable to fork 

Note: For now, my GIT_SSH environment variable is pointing to C:\Program Files (x86)\Git\bin\ssh.exe, but I have also tried C:\Program Files (x86)\Git\bin, erasing it entirely, pointing to putty's/plink's folder, and pointing to their executables, but still the same message.

When I test the connection everything works fine:

$ ssh -T [email protected] Hi USER! You've successfully authenticated, but GitHub does not provide shell access. 

What am I doing wrong? Does it make a difference if I do the git init in the directory in the first place?

EDIT:

This didn't help:

setting GIT_SSH to plink.exe and adding plink's path to PATH

**EDIT 2 **

result of command with GIT_TRACE=2

$ GIT_TRACE=2 git clone [email protected]:XXX/AffableBean trace: built-in: git 'clone' '[email protected]:XXX/AffableBean' Cloning into 'AffableBean'... trace: run_command: 'Plink.exe' '-batch' '[email protected]' 'git-upload-pack '\''XXX/AffableBean'\''' error: cannot spawn Plink.exe: No such file or directory fatal: unable to fork 
like image 860
Patryk Avatar asked May 13 '12 18:05

Patryk


1 Answers

None of the answers so far worked for me. What ended up fixing this issue for me was removing quotes from my GIT_SSH variable and don't escape any characters at all, no MSYS path style (eg. /c/path\ to\ putty/plink.exe). Just enter the path normally, Git handles the quoting.

set GIT_SSH=C:\path to putty\plink.exe 

That's it. When using GIT_TRACE you can see that the variable gets quoted in the resulting command so:

  1. the added double quotes change the string passed to the command and

  2. the path is wrapped in single quotes so the spaces are ok.

Hope that helps someone.

like image 116
th3coop Avatar answered Oct 05 '22 15:10

th3coop