I am trying to clone a remote repository on Windows, but when I did this:
git clone [email protected]:organization/xxx.git
I got this error:
error: cannot run ssh: No such file or directory
fatal: unable to fork
Am I missing something?
I am trying to clone a remote repository on Windows, but when I did this:
git clone [email protected]:organization/xxx.git
I got this error:
error: cannot run ssh: No such file or directory
fatal: unable to fork
Am I missing something?
You don't have ssh installed (or don't have it within your search path).
You can clone from github via http, too:
git clone http://github.com/organization/xxx
Check if you have installed ssh-client
. This solves the problem on docker images, even when ssh keys are present.
On Debian images:
apt-get install openssh-client
On Alpine images:
apk add openssh-client
openssh-client
–
Sanborne RUN apk add openssh-client
works on alpine image builds –
Egress You don't have ssh installed (or don't have it within your search path).
You can clone from github via http, too:
git clone http://github.com/organization/xxx
cygwin
(which is my case). –
Hafner Most likely your GIT_SSH_COMMAND
is referencing the incorrect public key.
Try:
export GIT_SSH_COMMAND="ssh -i /home/murphyslaw/.ssh/your-key.id_rsa
then
git clone [email protected]:organization/xxx.git
I am aware that it is an old topic, but having this problem recently, I want to bring here what I resolve my issue.
You might have this error on these conditions :
[email protected]:organization/repo.git
git clone [email protected]/xxxxx.git
whereas you don't have ssh client (or it is not present on path)git clone xxx.git
work fine on direct command line) but when you run the same kind of command through a shell script fileHere, I assume that you don't want to change protocol ssh git@
to http://
([email protected]:organization/repo.git
-> http://github.com/organization/repo.git
), like my case, cause I needed the ssh
format.
So,
GIT_SSH_COMMAND
variable with your public ssh key, in front of your git command, like this :
GIT_SSH_COMMAND="/usr/bin/ssh -i ~/.ssh/id_rsa" git pull
(Feel free to change it depending on your context)
I had this issue right after my antivirus moved the cygwin ssh binary to virus vault, and restored it after.
Symptoms:
Another option before reinstalling ssh in this particular case: check the ssh
command permissions
$ ls -al /usr/bin/ssh.exe
----rwxrwx+
$ chmod 770 /usr/bin/ssh.exe
I got the same error on the Alpine
container in the CI-CD
pipeline. I have added openssh
package and it worked.
RUN apk add --no-cache git openssh
You can try these as well
ssh-add ~/.ssh/identity_file
chmod 400 ~/.ssh/identity_file
It so happened in my case that the new pair of ssh keys linked with my git account were not accessible.
I had to sudo chmod 777 ~/.ssh/id_rsa.*
to resolve the issue.
chmod 777
is wrong and dangerous. You will want to revert to sane permissions ASAP (for your use case, probably chmod 600
or 640
or even 644
depending on the ownership and group) and if you have had world writable system files on a public-facing system, at the very least investigate whether it could have been breached and used as a pivot point for breaking into your organization’s network. –
Hairline If your local drive is a mapped drive and you get that error message, consider changing directory to folder on local "C:" drive.
I encounted same message when I was on x:\\sys\windows_mapped_drive
.
Once I cd
to local c:\foobar\clone_project
drive my git clone
command worked.
© 2022 - 2024 — McMap. All rights reserved.
cygwin
(which is my case). – Hafner