"Невозможно найти удаленного помощника для https" во время git clone
Я не могу клонировать репозитории 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
- Установка библиотек экспатов
- Загрузка исходного кода Git и сборка с использованием:
./configure --prefix=/usr --with-curl --with-expat
- Также пробовал указывать configure на curl бинарный (
./configure --prefix=/usr --with-curl=/usr/bin/curl
)
Я перепробовал все, что могу найти в интернете, но не повезло. Может кто-нибудь мне помочь?
Git версия = 1.7.6.4
ОС = Ubuntu 11.04
25 ответов
Похоже, что отсутствие (lib) curl-devel, установленного при компиляции git, может вызвать это.
Если вы устанавливаете (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
Если вы пытаетесь клонировать, вы можете использовать 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
На всякий случай, если кто-то сталкивается с этим в системе QNAP или любой другой системе с OPKG в качестве менеджера пакетов:
Вам необходимо установить git-http вместе с git. Подобно:
opkg install git-http
Я использовал "git://
" вместо "https://
"И это решило проблему. Моя последняя команда была:
git clone --recursive git://github.com/ceph/ceph.git
В нашем случае проблема была исправлена, когда мы проверили
git --exec-path
указывал на путь, который перестал существовать. (Это указывало на путь, где мы скомпилировали git, а не копировали потом, чтобы кто-нибудь мог получить к нему доступ)
Мы сделали:
export GIT_EXEC_PATH=<path_of_/libexec/git-core/>
и решил.
На CentOS 5.x установка curl-devel устранила проблему для меня.
У меня была такая же проблема и просто ее решить.
Просто удалите git и переустановите его.
#apt-get remove --purge git-svn git-core
#rm /usr/local/bin/git
#apt-get install git-svn git-core
и все работает хорошо.
Надеюсь, это поможет.
Если эта проблема возникла при привязке к использованию github через утилиту командной строки github, проблема, скорее всего, связана с использованием версии gh для привязки.
В конце концов, документы на github спасли положение!
https://github.com/cli/cli/blob/trunk/docs/install_linux.md
Вот шаги, которые помогут сэкономить время (debian / ubuntu / Raspberry PiOS):
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /usr/share/keyrings/githubcli-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
sudo apt update
sudo apt install gh
У меня была точно такая же проблема, и она сводилась к неудовлетворенной зависимости, однако я попробовал решение, принятое на основе принятого ответа, и оно не сработало.
В конце концов, мне удалось установить все следующее (это RedHat):
sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
После этого я выполнил другие команды, как указано, и это сработало:
./configure
make
sudo make prefix=/usr/local install
Я вытащил список зависимостей прямо с сайта Git. Видимо, я должен был начать там: /
Самый простой способ решить эту проблему - убедиться, что git-core
добавляется в path
для вашего текущего пользователя
Если вы добавите следующее в свой файл профиля bash в ~/.bash_profile
это обычно должно решить проблему
PATH=$PATH:/usr/libexec/git-core
Это сработало для меня в Centos 6.6 для установки git 2.3.1:
У меня не было установлено curl-devel (проверка на curl_global_init в -lcurl... нет). Ключ должен был сгенерировать скрипт настройки
добавить 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
построить мерзавец
# 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
В 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
Для тех, кто использует git с Jenkins в системе Windows, вам нужно настроить расположение git.exe в:Manage Jenkins => Global Tool Configuration => Git => Путь к исполняемому файлу Git и введите путь к git.exe, например; C: \ Program Files \ Git \ bin \ git.exe
У меня была эта проблема при использовании Capistrano для развертывания приложения рельсы. Проблема была в том, что у моего пользователя был только доступ в оболочку в cpanel. Изменение нормального доступа к оболочке решило мою проблему.
На сентос 7:
$ yum install curl-devel
$ yum reinstall git
Это подходит для меня.
У меня было много проблем с этой проблемой удаленного помощника. Я удостоверился, что установил весь expat, curl и т. Д., Но, наконец, решил его, обновив gcc, обнаружив, что версия 4.4.4 не работает. Просто сделал ням обновление и перекомпилировал с 4.4.6.
В моем случае ничего не получилось, через некоторое время, посмотрев, что происходит, я обнаружил это в своем конфигурационном файле. Не уверен, как он туда попал
% cat ~/.gitconfig
[user]
email = xxxxxxx@gmail.com
name = xxxxxx
[alias]
g = grep -n -i --heading --break
[url "git+https://github.com/"]
insteadOf = git@github.com:
[url "git+https://"]
insteadOf = git://
После удаления свойств URL все снова работало нормально
В моем случае git --exec-path
указывал на правильный путь и git-remote-https
существует, но не имеет разрешения на выполнение. Такchmod +x git-remote-http
исправил проблему.
Работал
1- Я должен был удалить мерзавец:
sudo apt-get remove git
2 - заново установить git с суффиксом -all:
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
У меня та же проблема сегодня: git http сломан после нескольких лет счастливого обслуживания. Кажется, это вызвано некоторыми обновлениями Perl lib. Попробовал несколько вменяемых предложений в сети, ни один не сработал. Достаточно, я просто удалил все мерзавцы, получил новый архив с http://git-scm.com/, скомпилировал и установил, и все вернулось в нормальное состояние. Дайте ему попробовать, или вы можете углубиться в ваши журналы...
Я приземлился здесь однажды, потому что я работал с самим git. Когда я его собрал, make-файл по умолчанию установил бинарный файл в ~/bin/git. Так как в моем PATH сначала был ~ / bin, когда я запускал 'git pull --rebase', он использовал тот, что в ~ / bin, и, следовательно, не мог найти помощников.
Я обошел проблему, запустив "/ usr / bin / git..." с полным путем (в противном случае я мог бы скорректировать свой PATH).
CentOS Minimal обычно устанавливают версию 1.8 yum install git
команда.
Лучший способ - собрать и установить его из исходного кода. Текущая версия 2.18.0
,
Загрузите исходный код с
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
Распаковать
tar -zxf git-2.18.0.tar.gz && cd git-2.18.0
Установите пакет зависимостей, выполнив
yum install autoconf curl-devel expat-devel gettext-devel openssl-devel perl-devel zlib-devel asciidoc xmlto openjade perl* texinfo
Установите 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
Скомпилируйте и установите ссылку на https://git-scm.com/book/en/v2/Getting-Started-Installing-Git
$ make configure $./configure --prefix = / usr $ make all doc info $ sudo make install install-doc install-html install-info
Перезагрузите сервер (если нет, вы можете столкнуться с
Unable to find remote helper for 'https'
ошибка)$ перезагрузиться сейчас
Тестовое задание:
$ 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
Мне пришлось добавить пару дополнительных установок под управлением CentOS версии 5.10 (Final):
yum install openssl097a.x86_64
yum install openssl-perl.x86_64
Использование git-1.8.5: ./configure make clean make 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.
Нашел это в 2020 году, и решение решило проблему с ОМЗ /questions/18142529/nevozmozhno-najti-udalennogo-pomoschnika-dlya-https-vo-vremya-git-clone/18142569#18142569
...
➜ ~ cd $ZSH
➜ .oh-my-zsh (master) ✗ git remote -v
origin https://github.com/ohmyzsh/ohmyzsh.git (fetch)
origin https://github.com/ohmyzsh/ohmyzsh.git (push)
➜ .oh-my-zsh (master) ✗ date ; omz update
Wed Sep 30 16:16:31 CDT 2020
Updating Oh My Zsh
fatal: Unable to find remote helper for 'https'
There was an error updating. Try again later?
omz::update: restarting the zsh session...
...
ln "$execdir/git-remote-http" "$execdir/$p" 2>/dev/null || \
ln -s "git-remote-http" "$execdir/$p" 2>/dev/null || \
cp "$execdir/git-remote-http" "$execdir/$p" || exit; \
done && \
./check_bindir "z$bindir" "z$execdir" "$bindir/git-add"
➜ git-2.9.5
➜ git-2.9.5
➜ git-2.9.5
➜ git-2.9.5 omz update
Updating Oh My Zsh
remote: Enumerating objects: 296, done.
remote: Counting objects: 100% (296/296), done.
remote: Compressing objects: 100% (115/115), done.
remote: Total 221 (delta 146), reused 179 (delta 105), pack-reused 0
Receiving objects: 100% (221/221), 42.89 KiB | 0 bytes/s, done.
Resolving deltas: 100% (146/146), completed with 52 local objects.
From https://github.com/ohmyzsh/ohmyzsh
* branch master -> FETCH_HEAD
7deda85..f776af2 master -> origin/master
Created autostash: 273f6e9
Я получил эту ошибку на Windows при использовании TortoiseGit. Переустановите Git для Windows и сообщите TortoiseGit путь к git.exe, повторно запустив исправленный Мастер первого запуска.