Подтвердить что ты не робот

Почему эта команда git clone не работает?

Попытка использовать команду git clone. Мое понимание (пожалуйста, исправьте, если не так) было то, что для размещения репозитория Git вам просто нужен компьютер, на котором запущен ssh, и проект/репозиторий, сидящий на нем в разрешенном месте.

У меня есть мой репозиторий Git в системе OS X, в которой выполняется ssh. Я пытаюсь клонировать его в системе Windows XP. У меня есть Git Bash, установленный на компьютере XP. В консоли Git Bash (MINGW) я могу без проблем с ssh в Mac.

Однако git clone выходит из строя...

$ git clone [email protected]:~/project/path/contactdb
Initialized empty Git repository in 
  c:/Documents and Settings/Administrator/My Documents/projects/contactdb/.git/
bash: git-upload-pack: command not found
fatal: The remote end hung up unexpectedly

Пробовал с расширением .git и без него:

$ git clone [email protected]:~/project/path/contactdb

$ git clone [email protected]:~/project/path/contactdb.git

Нужно ли мне что-то еще установить на Mac?

4b9b3361

Ответ 1

У вас должен быть установлен Git на компьютере с репозиторием Git, который вы хотите клонировать; также git-upload-pack должен быть в $PATH на удаленной машине при выполнении ssh. Получаете ли вы что-то вроде следующего ответа при прямом доступе к удаленной машине:

$ ssh [email protected] git-upload-pack --help
usage: git upload-pack [--strict] [--timeout=nn] <dir>

или следующий (неправильный) ответ:

$ ssh [email protected] git-upload-pack --help
bash: git-upload-pack: command not found

(конечно, имя оболочки зависит от того, что использует удаленная сторона).

То, что также может быть проблемой (хотя, возможно, и не в вашем случае), неправильно сконфигурировало удаленную машину, чтобы использовать интерактивную оболочку для подключения ssh, либо предоставляя некоторые сообщения при подключении, либо устанавливая интерактивные переменные, как печально известную переменную среды $CDPATH.

Ответ 2

Я решил проблему, добавив следующую строку в мой файл ~/.bashrc на удаленном компьютере:

export PATH=$PATH:"/usr/local/bin:/usr/local/git/bin"

Проблема заключалась в том, что $PATH не включал /usr/local/ git/bin для неинтерактивных сеансов. Добавление к ~/.bashrc исправило эту проблему.

Ответ 3

Другой способ:

git clone --upload-pack/path/to/ git -upload-pack ssh://user @host/~/project/path/contactdb

Ответ 4

Я использовал

git clone mysite.net:/path/to/site

который работал у меня.

Ответ 5

У меня была такая же проблема на mac os, и я решил это, скопировав git -upload-pack из /usr/local/ git/bin в/bin.

Ответ 6

У меня была такая же проблема и без удаления устаревшего сертификата все, что печаталось, он начал работать. Единственное, что я сделал по-другому в этот раз, - это переключить Wi-Fi из сети прокси-сервера на мое личное мобильное место. Затем я запускаю команду ниже в терминале

$ git clone https://[email protected]/project-folder/project-name.git

Затем он начал клонирование и запросил пароль.

Cloning into 'project-name'...
Password for 'https://[email protected]':

Загружен репозиторий..

remote: Counting objects: 2449, done.
remote: Compressing objects: 100% (1244/1244), done.
remote: Total 2449 (delta 1388), reused 1999 (delta 1070)
Receiving objects: 100% (2449/2449), 768.56 KiB | 101.00 KiB/s, done.
Resolving deltas: 100% (1388/1388), done.

Ответ 7

Если вы используете SSH, убедитесь, что вы также правильно настроили все ключи SSH.

http://help.github.com/mac-set-up-git/

Ответ 8

Для msysgit использование опции -u для указания пути к git -upload-pack не работает, когда путь включает пробелы, потому что кавычки (одиночные, двойные), похоже, не поддерживаются (1.7.11.msysgit. 1). Добавление его в мой PATH (C:\Program Files (x86)\ Git\libexec\git -core). [Однако у меня есть дополнительные проблемы с моей настройкой]

Ответ 9

Я все пробовал, я проверял свои ключи, пути и инструменты. Тем не менее, я не смог клонировать репо из github, используя "git shell" "git gui" и "tortoise git".

Я загрузил и установил "" Инструменты Visual Studio для Git "(который требовал" VS2012 Update 2 CTP") и смог клонировать репо изнутри Visual Studio:

  • Нажмите "Главное меню- > Просмотр- > Командный проводник"
  • Нажмите "Team Explorer- > Connect To Team Projects"
  • Нажмите "Командный проводник- > Локальный Git Репозитории Раздел- > Клон"
  • Введите URL-адрес Git Repo to Clone (желтый ящик)
  • Введите или просмотрите локальную папку для клонирования в
  • Нажмите "Клонировать"

Через некоторое время репо было клонировано. Я успешно клонировал полдюжины репо таким образом, что msysgit, github и tortoisegit не работали должным образом.

Ответ 10

У меня такая же проблема. Потратил полчаса, пытаясь выяснить, что происходит, и вы знаете, что помогло? Просто перезапустите терминал. Иногда это просто необходимо.