«Невозможно найти удаленного помощника для https» во время git clone

203

Я не могу клонировать репозитории HTTPS. Я могу клонировать репозитории SSH, но не ретрансляции HTTPS. Я не могу протестировать протокол GIT, так как я за корпоративным брандмауэром.

Это то, что я пытаюсь сделать:

$ git clone https://github.com/nvie/gitflow.git
Cloning into gitflow...
fatal: Unable to find remote helper for 'https'

Я до сих пор пробовал следующее (на основе поиска Google)

  • Очистка и установка GIT через apt-get
  • Установка build-deps для GIT через apt-get
  • Установка библиотек curl dev
  • Установка библиотек expat
  • Загрузка GIT источника и построения с использованием:
    • ./configure --prefix=/usr --with-curl --with-expat
    • Также попытался настроить указатель на curl binary (./configure --prefix=/usr --with-curl=/usr/bin/curl)

Я пробовал все, что мог найти в Интернете, не повезло. Кто-нибудь может мне помочь?

Git version = 1.7.6.4

OS = Ubuntu 11.04

  • 0
    Извините за очевидность, похоже, что curl не установлен. сделать curl --help и посмотреть, если это так.
  • 0
    Я получаю список параметров curl при запуске curl --help.
Показать ещё 10 комментариев
Теги:

22 ответа

234
Лучший ответ

Похоже, что при создании компиляции git это может быть не установлено (lib) curl-devel.

Если вы устанавливаете (lib) curl-devel, а затем перестраиваете/устанавливаете git, это должно решить проблему:

$ yum install curl-devel
$ # cd to wherever the source for git is
$ cd /usr/local/src/git-1.7.9  
$ ./configure
$ make
$ make install

Это работало для меня на Centos 6.3.

Если у вас нет yum, вы можете скачать источник в curl-devel здесь:


Если вместо этого вы используете Ubuntu:

sudo apt-get install libcurl4-openssl-dev 
  • 4
    эти шаги работали для меня. CentOS 5.8 32 бит; git версия 1.8.0
  • 0
    Также для меня red hat linux 5.
Показать ещё 17 комментариев
57

Если вы пытаетесь клонировать, вы можете использовать git transport

Например: git clone git://github.com/fog/fog.git

Vaio ~/Myworks/Hero $ git clone git://github.com/fog/fog.git

Initialized empty Git repository in /home/nthillaiarasu/Myworks/Hero/fog/.git/
remote: Counting objects: 41138, done.
remote: Compressing objects: 100% (13176/13176), done.
remote: Total 41138 (delta 27218), reused 40493 (delta 26708)
Receiving objects: 100% (41138/41138), 5.22 MiB | 58 KiB/s, done.
Resolving deltas: 100% (27218/27218), done
  • 3
    Спасибо за совет. К сожалению, я работаю за корпоративным брандмауэром, который блокирует порт протокола git, и мне его не открывают. Я загружал tar-архивы, чтобы обойти проблему, но мне бы очень хотелось, чтобы моя установка git работала правильно!
  • 0
    Это отлично сработало для меня на LMDE.
Показать ещё 1 комментарий
42

Я использовал "git://" вместо "https://", и это решило проблему. Моя последняя команда:

git clone --recursive git://github.com/ceph/ceph.git
  • 14
    Это обходной путь, а не решение. Он будет работать для репозиториев, но не для гистологов, а не для OP из-за его корпоративного брандмауэра.
  • 0
    И это также означает, что вы ничего не можете подтолкнуть
Показать ещё 4 комментария
28

На всякий случай кто-то встречает это в системе QNAP или в любой другой системе с OPKG в качестве диспетчера пакетов:

Вам нужно установить git -http вместе с git. Как:

opkg install git-http
  • 2
    Вы спасли мой день! Это как раз мой случай. Я использую «entware» в системе Xpeonology, чтобы получить больше пакетов программного обеспечения для Linux, и после «opkg install git» произойдет сбой «git clone https: //» с ошибкой: fatal: Невозможно найти удаленного помощника для https ». Спасибо за упоминание этого пакета "git-http".
  • 0
    Спасибо, я понял проблему, но не знал, что это за пакет, который позволит git получать данные http вместо данных ssh.
Показать ещё 1 комментарий
15

В CentOS 5.x установка curl-devel исправила проблему для меня.

  • 1
    гектометр У меня не работало на CentOS 5.5
  • 7
    @RyanM: это сработало для меня. Я yum install curl-devel а затем ./configure , make и make install на свой git-код. Тогда https: // работал для меня. Это на CentOS 5.8
Показать ещё 1 комментарий
13

У меня была такая же проблема и ее просто решить.

Просто удалите git и переустановите его.

#apt-get remove --purge git-svn git-core
#rm /usr/local/bin/git
#apt-get install git-svn git-core

и все работает хорошо.

Надеюсь на эту помощь.

  • 2
    Вы должны сделать apt-get remove --purge git
  • 0
    Это сработало для меня ... удаление git, как указано выше, затем получение git tarball, сборка и установка.
9

У меня была точно такая же проблема, и она сводилась к неудовлетворенной зависимости, однако я попробовал решение, принятое в качестве ответа, и оно не сработало.

В конце концов, мне удалось установить все следующее (это RedHat):

sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel

После этого я выполнил другие команды, как указано, и это сработало:

./configure
make
sudo make prefix=/usr/local install

Я вытащил список зависимостей прямо с сайта Git. Видимо, я должен был начать там:/

4

Это работало для меня в Centos 6.6 для установки git 2.3.1:

  • У меня не было установлен curl-devel (проверка curl_global_init на -lcurl... no). Ключ должен был сгенерировать configure script

  • добавить rpmforge для docboox2x

  • установить пакеты

    yum install openssl-devel zlib-devel perl-ExtUtils-MakeMaker svn tcl perl-Locale-Msgfmt gettext asciidoc xmlto docbook2x
    
  • сделать символическую ссылку

    ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi
    
  • build git

    # download latest relase from https://github.com/git/git/releases
    curl -O -J -L https://github.com/git/git/archive/v2.13.0.tar.gz
    tar xf git-2.13.0.tar.gz
    cd git-2.13.0
    make configure
    ./configure --prefix=/usr
    make all doc
    make install install-doc install-html
    
  • 0
    Подождите секунду ... проблема в том, что git clone https: // не работает. Как вы исправляете это путем клонирования исходного кода git ??? Любой, кто читает этот вопрос, не сможет выполнить шаг 5.
  • 1
    добавлено использование curl и tar
2

В Mac OS X 10.9 Mavericks работающее решение выглядит следующим образом

rvm pkg install openssl
CC=/usr/local/bin/gcc-4.2 CPP=/usr/local/bin/cpp-4.2 CXX=/usr/local/bin/g++-4.2  rvm install 1.9.3 --with-openssl-dir=$rvm_path/usr

Это компиляция Ruby с поддержкой OpenSSL. Затем удалите все старые версии.

brew uninstall openssl
brew uninstall curl
brew uninstall git

Затем установите обновленные версии. Установка git зависит от обновленной версии CURL.

brew install openssl
brew install curl
brew install git
  • 0
    Это сработало для меня ... пришлось удалить CC=/usr/local/bin/gcc-4.2 CPP=/usr/local/bin/cpp-4.2 CXX=/usr/local/bin/g++-4.2 хотя и используется выше рубиновая версия
2

У меня возникла эта проблема при использовании capistrano для развертывания приложения rails. Проблема заключалась в том, что мой пользователь только имел доступ к закрытой оболочке в cpanel. Меняя его на обычный доступ к оболочке, я исправил свою проблему.

  • 0
    Как это можно исправить, удерживая пользователя в тюрьме? Что нужно добавить в jk_init.ini под [git] чтобы это исправить?
1

В нашем случае проблема была исправлена, когда мы проверили

git --exec-path

указывал на путь, который перестал существовать. (Он указывал на путь, по которому мы скомпилировали git, а не туда, куда мы потом скопировали, чтобы кто-нибудь мог получить к нему доступ)

Мы сделали:

export GIT_EXEC_PATH=<path_of_/libexec/git-core/>

и решил.

1

On centos 7:

$ yum install curl-devel
$ yum reinstall git

Эта работа для меня.

1

У меня было много проблем с этой проблемой удаленного помощника. Я гарантировал, что я установил весь экспат, завиток и т.д., Но, наконец, решил его, обновив gcc после того, как обнаружил, что версия 4.4.4 была duff. Просто обновил yum и перекомпилировал с 4.4.6.

0

Я получил эту ошибку на Windows при использовании TortoiseGit. Переустановите Git для Windows и сообщите TortoiseGit путь к git.exe, повторно запустив исправленный Мастер первого запуска.

0

CentOS Minimal обычно устанавливает версию 1.8 git командой yum install git.

Лучший способ - собрать и установить его из исходного кода. Текущая версия 2.18.0.

  1. Загрузите исходный код с https://mirrors.edge.kernel.org/pub/software/scm/git/ или curl -o git-2.18.0.tar.gz https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.18.0.tar.gz

  2. Распакуйте tar -zxf git-2.18.0.tar.gz && cd git-2.18.0 помощью tar -zxf git-2.18.0.tar.gz && cd git-2.18.0

  3. Установите пакет зависимостей, выполнив yum install autoconf curl-devel expat-devel gettext-devel openssl-devel perl-devel zlib-devel asciidoc xmlto openjade perl* texinfo

  4. Установите docbook2X, его нет в репозитории rpm. Скачать и установить

    $ curl -o docbook2X-0.8.8-17.el7.x86_64.rpm http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/d/docbook2X-0.8.8-17.el7. x86_64.rpm $ rpm -Uvh docbook2X-0.8.8-17.el7.x86_64.rpm

И сделайте ссылку на Unix:

ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi
  1. Скомпилируйте и установите ссылку на https://git-scm.com/book/en/v2/Getting-Started-Install-Git.

    $ make configure $./configure --prefix =/usr $ make all doc info $ sudo make install install-doc install-html install-info

  2. Перезагрузите сервер (в противном случае вы можете столкнуться с невозможностью Unable to find remote helper for 'https' ошибки Unable to find remote helper for 'https')

    $ перезагрузиться сейчас

  3. Тестовое задание:

    $ git clone https://github.com/volnet/v-labs.git $ cd v-labs $ touch test.txt $ git add. $ git commit -m "test git install" $ git push -u

0

В моем случае ничего не получилось, через некоторое время, посмотрев, что происходит, я обнаружил это в своем конфигурационном файле. Не уверен, как он туда попал

% cat ~/.gitconfig 
[user]
    email = [email protected]
    name = xxxxxx
[alias]
    g = grep -n -i --heading --break
[url "git+https://github.com/"]
    insteadOf = [email protected]:
[url "git+https://"]
    insteadOf = git://

После удаления свойств URL все снова работало нормально

0

работал

1- Мне пришлось удалить git:

sudo apt-get remove git

2- повторно установите git с полным суффиксом:

sudo apt-get install git-all

как описано здесь: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git

3- проверили все настройки (имя пользователя и адрес электронной почты) моей учетной записи github

кстати, я ошибся в хорошей электронной почте, которая была источником моих ошибок;)   https://github.com/settings/profile
проверьте свое имя пользователя
   https://github.com/settings/emails
проверьте, что ваш адрес электронной почты является хорошим.

4- Я следил за учебником git здесь

https://help.github.com/articles/connecting-to-github-with-ssh

0

Самый простой способ исправить эту проблему - убедиться, что git-core добавлен в path для вашего текущего пользователя

Если вы добавите следующее в ваш профиль bash в ~/.bash_profile, это должно нормально решить проблему.

PATH=$PATH:/usr/libexec/git-core
  • 0
    единственное решение, сработавшее для меня, - твое. Для других вы также можете исправить это, используя приведенную выше команду или команду ниже: / usr / bin / git pull origin master
  • 0
    Также убедитесь, что ваше git-ядро собрано с включенным git-remote-https.
0

Для тех, кто использует git с Jenkins в системе Windows, вам нужно настроить расположение git.exe под: Управление Jenkins = > Глобальная настройка инструмента = > Git = > Путь к git исполняемому и заполните - на пути к git.exe, например; C:\Program Files\Git\bin\git.exe

0

Я приземлился здесь один раз, потому что сам работал с git. Когда я его построил, файл makefile по умолчанию установил двоичный файл в ~/bin/git. Поскольку мой PATH имел ~/bin, когда я запускал 'git pull --rebase', он использовал один в ~/bin и, следовательно, не мог найти помощников.

Я работал над проблемой, выполнив "/usr/bin/ git..." с полным путем (в качестве альтернативы я мог бы настроить свой PATH).

0

Мне пришлось добавить несколько дополнительных установочных файлов, в которых запущена версия CentOS 5.10 (Final):

yum install openssl097a.x86_64 
yum install openssl-perl.x86_64 

Использование git -1.8.5:   . /configure   очистить   делать   make install

git clone https://github.com/michaelficarra/CoffeeScriptRedux.git
Cloning into 'CoffeeScriptRedux'...
remote: Reusing existing pack: 4577, done.
remote: Counting objects: 24, done.
remote: Compressing objects: 100% (23/23), done.
remote: Total 4601 (delta 13), reused 11 (delta 1)
Receiving objects: 100% (4601/4601), 2.60 MiB | 126.00 KiB/s, done.
Resolving deltas: 100% (2654/2654), done.
Checking connectivity... done.
0

Сегодня у меня такая же проблема: git http, разбитый после многих лет счастливого обслуживания. Это вызвано некоторыми обновлениями Perl lib. Пробовал некоторые здравомыслящие предложения в Интернете, никто не работал. Достаточно, я просто удалил все материалы git, получил новый tarball из http://git-scm.com/, скомпилирован и установлен, и все возвращается к нормальный. Попробуйте, или вы можете заглянуть в свои журналы...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню