Невозможно выполнить клон Git, но можно выполнить Git pull / push на уже клонированном репо - PullRequest
2 голосов
/ 07 апреля 2011

У меня есть удаленный репозиторий Git, из которого я клонировал, и я могу вытащить / перенести в этот репозиторий.Но недавно, когда я попытался перенести один и тот же репозиторий в другой каталог, он не работал.

$ git clone -v 'http://user@server.com/git/project.git' project  
Initialized empty Git repository in f:/temp/project/.git/  
Password:  
error: cannot spawn git: No such file or directory

Я все еще могу сделать git pull и нажать на репозиторий, который я уже клонировал.

Я пробовал goggling для этой ошибки, но не сильно помог.Может кто-нибудь также сказать мне, как я могу отладить такие ошибки?

Ответы [ 3 ]

1 голос
/ 09 апреля 2011

По какой-то причине http не работает.Это может быть проблема с вашим сервером git http (если он затрагивает несколько клиентов) или с вашей установкой git (если все эти клиенты используют одну и ту же версию git).

Ваш существующий репозиторий использует ssh, вот чтоgit remote -v сказал тебе.Таким образом, вы можете продолжать использовать это.git clone user@server.com/git/project.git должно работать.

1 голос
/ 07 апреля 2011

git не может запустить необходимую подкоманду для выборки репозиториев HTTP.Вероятно, это будет /usr/lib/git-core/git-http-fetch - если он отсутствует, переустановите Git.


Если в Linux, используйте strace, чтобы проверить, какую программу git пытается выполнить.

strace -o /tmp/git.log git clone http://.../

grep "^exec" /tmp/git.log | grep "ENOENT"
0 голосов
/ 25 января 2013

Это также может произойти, если в вашем хранилище слишком много тегов (в нашем случае у нас было более тысячи автоматически созданных Jenkins)

Вопрос: необходимо ли хранить такое количество тегов?если не удалить некоторые из них

...