git clone中に「httpsのリモートヘルパーが見つかりません」


244

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-depsGitのインストールapt-get
  • curl devライブラリのインストール
  • Expatライブラリのインストール
  • Gitソースのダウンロードとビルド:
    • ./configure --prefix=/usr --with-curl --with-expat
    • また、curlバイナリでconfigureをポイントしてみました(./configure --prefix=/usr --with-curl=/usr/bin/curl

私はインターネットで見つけることができるすべてを運なしで試しました。誰か助けてもらえますか?

Gitバージョン= 1.7.6.4

OS = Ubuntu 11.04


申し訳ありませんが、curlがインストールされていないようです。行うcurl --helpかどうかを確認します。
マイクジョーンズ

curl --helpを実行すると、curlオプションのリストが返されます。
ベンK

1
質問の冒頭で述べたように、Googleで見つけることができるすべての結果を調べてきました。これまで何も機能していません!
ベンK

2
同じ問題があります。私も企業ファイアウォールの背後にいます。インターネットで見つかったすべてのオプションを使用して再コンパイルしようとしましたが、まったく機能しませんでした。他のアイデアは?

1
面白いことに、ロックされた$&#%^ * Solarisボックスでコンパイルできるように、curlのgithubからクローンを作成しようとしています。
makhdumi 2015

回答:


290

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
Vikram

1
CentOS 6.4とgit 1.8.2.1で動作しました
JoxTraex

18
Ubuntuの12.04 LTSに私は必要なパッケージされました:sudo apt-get install libcurl4-openssl-dev
マイケル・バリ

2
Ubuntu 10.04 LTSで必要なパッケージは、sudo aptitude install libcurl4-openssl-devapt-getに依存関係の問題があり、aptitudeで解決できるようです
13

1
私はgit自体で作業していて、〜/ binディレクトリに「make install」を実行したため、この問題が発生しました。私のPATHは、エラーが発生した〜/ bin / gitをピックアップしました。/ usr / bin / gitを使用して問題を解決しました。
qneill 2015

71

クローンを作成する場合は、gitトランスポートを使用できます

例えば: 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プロトコルのポートをブロックする企業ファイアウォールの背後で働いており、彼らはそれを私に開放しません。私は問題を回避するためにtarballsをダウンロードしてきましたが、gitのインストールを正しく機能させたいです!
Ben K

4
他の人が述べたように、通常はgit://は理想的ではありませんが、https://が機能しない場合は、httpsの代わりにgit://を常に使用するgit config --global url."git://".insteadof https://ように強制できgitます。 ://。これは、サブモジュール(例:)を使用してクローンを作成する場合に役立ちます--recursive
フェイクダッド2017

完璧です。QNAPクラウドに何もインストールできませんでしたが、これは魅力的に機能しました!
Phil Roggenbuck

45

QNAPシステムまたはパッケージマネージャーとしてOPKGを使用する他のシステムで誰かがこれに遭遇した場合に備えて:

gitとともにgit-httpをインストールする必要があります。お気に入り:

opkg install git-http

3
あなたは私の日を救った!これはまさに私の場合です。Xpeonologyシステムで「entware」を使用して、より多くのLinuxソフトウェアパッケージを取得しています。「opkg install git」の後に、「git clone https://」が次のエラーで失敗します:fatal:Unable to find remote helper for 'https '。この「git-http」パッケージについて言及していただきありがとうございます。
zerox

ありがとう、問題を理解しましたが、gitがsshデータの代わりにhttpデータを取得できるようにするパッケージが何であるかを知りませんでした。
erichlf

43

git://」の代わりに「https://」を使用して問題を解決しました。私の最後のコマンドは:

git clone --recursive git://github.com/ceph/ceph.git

16
これは回避策であり、解決策ではありません。それはレポジトリに対しては機能しますが、要旨に対しては機能しません。また、彼の企業ファイアウォールのためにOPに対しては機能しません。
Patrick Fisher

そして、それはあなたが何かを押すことができないことも意味します
Phil

@cecheverria:githubはgit over pushを受け入れません。
user2284570 2015年

2
@PatrickFisherしかし、curl-develライブラリをインストールする権限がない環境で機能します。また、sysadminがそれらを迅速にインストールしません。
squipbar

16

私たちのケースでは、チェックしたときに問題が修正されました

git --exec-path

存在しなくなったパスを指していた。(それは私たちがgitをコンパイルしたパスを指しており、誰もがそれにアクセスするために後でコピーしたパスではありませんでした)

私たちはしました:

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

そして解決した。


ありがとう。2番目のソリューションは、gitが別のフォルダーにインストールされている場合に機能します。
maxwu

15

CentOS 5.xでは、curl-develをインストールすると問題が解決しました。


8
@RyanM:これでうまくいきました。I yum install curl-develその後、I ./configuremakemake install私のgitのコードに。次に、https://がうまくいきました。これはCentOS 5.8にあります
Brett

13

同じ問題があり、簡単に解決できました。

gitをアンインストールして再インストールするだけです。

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

そして、すべてがうまくいきます。

この助けを願っています。


2
あなたは--purge gitのを削除apt-getを行う必要があります
sanbor

これは私にとってはうまくいきました...上記のようにgitをアンインストールしてから、git tarballを取得し、ビルドしてインストールします。
2013

10

私はまったく同じ問題を抱えていて、それが満たされていない依存関係にまで煮詰められましたが、受け入れられた回答の解決策を試しましたが、うまくいきませんでした。

私にとって最終的に機能したのは、以下のすべてをインストールすることでした(これはRedHatです)。

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

その後、他のコマンドを指定どおりに実行したところ、次のように機能しました。

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

依存関係のリストをGitのWebサイトから直接プルしました。どうやらそこから始めるべきだったようです:/


5

これはCentos 6.6でgit 2.3.1をインストールするのに役立ちました。

  1. curl-develをインストールしていません(-lcurlでcurl_global_initを確認しています...いいえ)。重要なのは、構成スクリプトを生成することでした

  2. docboox2x にrpmforge追加

  3. パッケージをインストールする

    yum install openssl-devel zlib-devel perl-ExtUtils-MakeMaker svn tcl perl-Locale-Msgfmt gettext asciidoc xmlto docbook2x
    
  4. シンボリックリンクを作る

    ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi
    
  5. 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
    

ちょっと待って...問題はgit clone https://が失敗することです。gitソースを複製してどのように修正していますか?この質問を読んで誰もがステップ5.行うことができなくなります
アンドリュー・ロリエン

1
curlとtarの使用法を追加
rofrol

5

この問題を修正する最も簡単な方法は、現在のユーザーのがに確実にgit-core追加されるようにすることですpath

これをbashプロファイルファイルに追加すると、~/.bash_profile通常は問題が解決します

PATH=$PATH:/usr/libexec/git-core

私にとって有効な唯一の解決策はあなたのものです。他の人のために、上記を使用してそれを修正するか、代わりに以下のコマンドを使用することもできます:/ usr / bin / git pull origin master
Ujjawal Khare

また、git-coreがgit-remote-httpsを含めてビルドされていることを確認してください。
Ed Randall

2

capistranoを使用してRailsアプリをデプロイすると、この問題が発生しました。問題は、私のユーザーがcpanelで投獄されたシェルアクセスしか持っていなかったことでした。通常のシェルアクセスに変更すると、問題が解決しました。


ユーザーを投獄したまま、これをどのように修正できますか?これを修正するには、jk_init.ini[git]に何を追加する必要がありますか?
なくなって

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

これは、OpenSSLサポートを使用してRubyをコンパイルするためのものです。次に、古いバージョンをすべてアンインストールします。

brew uninstall openssl
brew uninstall curl
brew uninstall git

次に、更新されたバージョンをインストールします。gitのインストールは、更新されたバージョンのCURLに依存しています。

brew install openssl
brew install curl
brew install git

これは私にとってうまくCC=/usr/local/bin/gcc-4.2 CPP=/usr/local/bin/cpp-4.2 CXX=/usr/local/bin/g++-4.2
いき

macOS 10.14(Mojave)での私の簡単な解決策は、既にインストールしたAnacondaを使用し、タイプconda install gitして新しいgitバージョンと依存パッケージをインストールすることでした。
スカイナウト

1

このリモートヘルパーの問題には多くの問題がありました。私はすべてのexpatやcurlなどをインストールしたことを確認しましたが、バージョン4.4.4がダフであることが判明した後、gccを更新することで最終的に解決しました。yumを更新し、4.4.6で再コンパイルしただけです。



0

今日も同じ問題が発生しました。何年にもわたるサービスのおかげでgit httpが壊れました。これは、Perl libの更新によって引き起こされたようです。ウェブ上でいくつかの健全な提案を試みましたが、どれもうまくいきませんでした。十分な時間があれば、すべてのgitを削除し、http://git-scm.com/から新しいtarballを取得し、コンパイルしてインストールしました。すべてが正常に戻りました。試してみるか、ログを深く掘り下げることができます...


0

CentOSリリース5.10(最終)を実行する追加のインストールをいくつか追加する必要がありました。

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.

0

git自体で作業していたので、一度ここに着陸しました。ビルドすると、デフォルトのmakefileがバイナリを〜/ bin / gitにインストールしました。'git pull --rebase'を実行したとき、私のPATHには最初に〜/ binがあったため、〜/ binのPATHを使用したため、ヘルパーを見つけることができませんでした。

'/ usr / bin / git ...'をフルパスで実行して問題を回避しました(または、PATHを調整することもできます)。


0

gitを使用してそれらのためジェンキンス Windowsシステムの下で、あなたがの場所を設定する必要がgit.exeを下: 管理ジェンキンス => グローバルコンフィギュレーションツール => Gitリポジトリ => パスのGitへの実行ファイルへのパスフィルインgit.exe、例えば; C:\ Program Files \ Git \ bin \ git.exe


0

働いた

1- gitを削除する必要がありました:

sudo apt-get remove git

2-再-接尾辞-allを付けて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

私の場合は何も成功しませんでした。しばらくしてから何が起こっているのかを調べたところ、構成ファイルでこれが見つかりました。どうやってそこに着いたのかわからない

% 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プロパティを削除した後、すべてが再び正常に機能していました


0

CentOS Minimalは通常、yum install gitコマンドでバージョン1.8の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

  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-Installing-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'エラーが発生する可能性があります)

    $今すぐ再起動

  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

TortoiseGitを使用しているときにWindowsでこのエラーが発生しました。Git for Windowsを再インストールし、ファーストスタートウィザードを再実行してTortoiseGitにgit.exeへのパスを通知すると、修正されました。


0

私の場合git --exec-path、正しいパスを指していてgit-remote-https存在していましたが、実行権限がありませんでした。だからchmod +x git-remote-http問題を修正しました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.