“Git klonu sırasında 'https' için uzaktan yardımcı bulunamadı”


244

HTTPS depolarını klonlayamıyorum. SSH depolarını klonlayabilirim, ancak HTTPS depolarını kopyalayamıyorum. Kurumsal bir güvenlik duvarının arkasında olduğum için GIT protokolünü test edemiyorum.

Ben yapmaya çalışıyorum:

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

Şimdiye kadar aşağıdakileri denedim (Google aramalarına dayanarak)

  • Git yoluyla temizleme ve yükleme apt-get
  • build-depsGit üzerinden yüklemeapt-get
  • Curl dev kitaplıklarını yükleme
  • Yurtdışı kütüphanelerini kurma
  • Git kaynağını indirme ve oluşturma:
    • ./configure --prefix=/usr --with-curl --with-expat
    • Ayrıca curl binary ( ./configure --prefix=/usr --with-curl=/usr/bin/curl) ' de yapılandırmayı işaret etmeyi denedi

Şanssız internette bulabildiğim her şeyi denedim. Biri bana yardım edebilir mi?

Git sürümü = 1.7.6.4

İşletim Sistemi = Ubuntu 11.04


Açıkça özür dilerim, kıvrılma yüklü değil gibi görünüyor. yapın curl --helpve bakın.
mike jones

Curl --help komutunu çalıştırdığımda curl seçeneklerinin bir listesini geri alıyorum.
Ben K

1
Biliyorum, sorumun üst kısmında bahsettiğim gibi, Google'da bulabildiğim her sonucu yaşadım. Şimdiye kadar hiçbir şey işe yaramadı!
Ben K

2
Bende aynı sorun var. Ben de bir şirket güvenlik duvarının arkasındayım. İnternette bulunan tüm seçeneklerle yeniden derlemeye çalıştım, ama hiç çalışmıyor. Başka bir fikrin var mı?

1
Komik olan şey, curl'un github'ından klonlamaya çalışıyorum, böylece kilitli bir $ & #% ^ * Solaris kutusunda derleyebilirim.
makhdumi

Yanıtlar:


290

Git'e derlediğinizde (lib) curl-devel yüklü olmamak buna neden olabilir.

(Lib) curl-devel yüklerseniz ve sonra git'i yeniden oluşturursanız / kurarsanız, bu sorunu çözmelidir:

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

Bu benim için Centos 6.3 üzerinde çalıştı.

Yum'unuz yoksa, curl-devel kaynağını buradan indirebilirsiniz:


Bunun yerine Ubuntu kullanıyorsanız:

sudo apt-get install libcurl4-openssl-dev 

4
bu adımlar benim için çalıştı. CentOS 5.8 32 bit; git sürüm 1.8.0
Vikram

1
CentOS 6.4 ve git 1.8.2.1
JoxTraex

18
Ubuntu 12.04 LTS'de ihtiyacım olan paket:sudo apt-get install libcurl4-openssl-dev
Michael Burr

2
Ubuntu 10.04 LTS'de ihtiyacım olan paket: sudo aptitude install libcurl4-openssl-devapt-get bağımlılık sorunu var ve yetenek bunu çözebilir gibi görünüyor
wenchiching

1
Git kendisi üzerinde çalışıyordu ve ~ / bin dizinime bir "make install" yapmıştı çünkü bu sorun vardı. PATH hata ile karşılaşan ~ / bin / git aldı. / Usr / bin / git kullanımı sorunu çözdü.
qneill

71

Klonlamaya çalışıyorsanız, git aktarımını kullanabilirsiniz

Örneğin: 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
Tavsiyen için teşekkürler. Ne yazık ki git protokolünün bağlantı noktasını engelleyen bir şirket güvenlik duvarının arkasında çalışıyorum ve benim için açmıyorlar. Sorunu atlamak için tarballs indiriyorum, ama git kurulumumun düzgün çalışmasını gerçekten istiyorum!
Ben K

4
Diğerlerinin de belirttiği gibi, git: // genellikle ideal değildir, ancak görünüşe göre https: // 'nin işe yaramadığı bir durumdaysanız, https yerine her zaman git: // kullanmaya git config --global url."git://".insteadof https://zorlamak gitiçin kullanabilirsiniz : //. Bu, alt modüller (örneğin ile --recursive) ile klonlamaya çalışıyorsanız faydalı olabilir .
fakedad

Mükemmel. QNAP bulutuma hiçbir şey yükleyemedim ama bu bir cazibe gibi çalıştı!
Phil Roggenbuck

45

Birisinin bir QNAP sisteminde veya paket yöneticisi olarak OPKG ile başka bir sistemde karşılaşması durumunda:

Git ile birlikte git-http'yi yüklemeniz gerekir. Sevmek:

opkg install git-http

3
Günümü kurtardın! Bu benim durumum. Daha fazla Linux yazılım paketi almak için bir Xpeonology sisteminde "entware" kullanıyorum ve "opkg install git" den sonra, "git clone https: //" hatayla başarısız olur: fatal: 'https için uzaktan yardımcı bulunamıyor '. Bu "git-http" paketinden bahsettiğiniz için teşekkür ederiz.
zerox

Teşekkürler Ben sorunu anladım, ama git ssh veri yerine http veri kapmak için izin verecek paketin ne olduğunu bilmiyordum.
erichlf

43

" git://" Yerine " https://" kullandım ve bu sorunu çözdü. Son komutum:

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

16
Bu bir çözüm, bir çözüm değil. Kurumsal güvenlik duvarı nedeniyle OP için değil, repos için çalışacak, ancak gist için değil.
Patrick Fisher

Ayrıca, hiçbir şeyi
Phil

@cecheverria: github push over git'i kabul etmiyor.
user2284570

2
@PatrickFisher Ama does derhal onları yüklenmez bukle-devel kütüphaneleri ve / veya sistem yöneticisinin yüklemek için haklara sahip değilsiniz ortamlarda çalışmayı.
squipbar

16

Bizim durumumuzda, kontrol ettiğimizde sorun düzeltildi

git --exec-path

varolmayan bir yola işaret ediyordu. (Git'i derlediğimiz yolu işaret ediyordu ve sonradan herkesin erişebilmesi için kopyaladığımız yeri değil)

Bir yaptık:

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

ve çözüldü.


Teşekkürler. Git ayrı bir klasöre yüklendiğinde 2. çözüm benim için çalışıyor.
maxwu

15

CentOS 5.x'te curl-devel'i yüklemek benim için sorunu düzeltti.


8
@RyanM: Bu benim için çalıştı. Ben yum install curl-develve sonra ben ./configure, makeve make installgit kodumda. Sonra https: // benim için çalıştı. Bu CentOS 5.8
Brett

13

Ben de aynı sorunu vardı ve çözmek için basit.

Git'i kaldırın ve yeniden yükleyin.

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

ve her şey iyi çalışıyor.

Umarım bu yardım.


2
Apt-get kaldırmalısınız
purge

Bu benim için çalıştı ... git'i yukarıdaki gibi kaldırmak, sonra git tarball'ı almak, inşa etmek ve kurmak.
2013

10

Aynı sorunu yaşadım ve karşılanmayan bir bağımlılığa kadar kaynattım, ancak kabul edilen yanıtın çözümünü denedim ve işe yaramadı.

Sonunda benim için işe yarayan aşağıdakilerin tümünü kuruyordu (bu RedHat):

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

Daha sonra, diğer komutları belirtildiği gibi çalıştırdım ve çalıştı:

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

Bağımlılıklar listesini doğrudan Git'in web sitesinden aldım . Görünüşe göre orada başlamalıydım: /


5

Bu benim için Git 2.3.1'i kurmak için Centos 6.6'da çalıştı:

  1. Ben curl-devel yüklü değildi (-lcurl ... curl_global_init kontrol ... hayır). Anahtar yapılandırma komut dosyası oluşturmaktı

  2. docboox2x için rpmforge ekle

  3. paketleri yükle

    yum install openssl-devel zlib-devel perl-ExtUtils-MakeMaker svn tcl perl-Locale-Msgfmt gettext asciidoc xmlto docbook2x
    
  4. Symlink yap

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

Bir saniye ... sorun git klonunun https: // başarısız olması. Git kaynağını klonlayarak bunu nasıl düzeltirsiniz ??? Bu soruyu okuyan herkes 5. adımı yapamayacak
Andrew Lorien

1
kıvrılma ve katran kullanımı eklendi
rofrol

5

Bu sorunu çözmenin en kolay yolu , geçerli kullanıcınıza git-coreeklenmesini sağlamaktır.path

Eğer bash profil dosyanıza aşağıdakileri eklerseniz ~/.bash_profilesorunu normal olarak çözmelisiniz

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

benim için çalışan tek çözüm sizindir. Diğerleri için yukarıdakini kullanarak da düzeltebilir veya aşağıdaki komutu kullanabilirsiniz: / usr / bin / git pull origin master
Ujjawal Khare

Ayrıca git-core'unuzun git-remote-https dahil olarak oluşturulduğundan emin olun.
Ed Randall

2

Bir ray uygulaması kurmak için capistrano kullanırken bu sorunu yaşıyordum. Sorun benim kullanıcı sadece cpanel bir hapishane kabuk erişim vardı. Normal kabuk erişimine değiştirmek sorunumu çözdü.


Kullanıcıyı hapiste tutarken bu nasıl düzeltilebilir? Bunu düzeltmek için jk_init.inialtına ne eklenmelidir [git]?
gitti

2

Mac OS X 10.9 Mavericks'te çalışan çözüm aşağıdaki gibidir

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

Bu Ruby'yi OpenSSL Desteği ile derlemek içindir. Ardından, tüm eski sürümleri kaldırın.

brew uninstall openssl
brew uninstall curl
brew uninstall git

Ardından, güncellenmiş sürümleri yükleyin. Git kurulumu CURL'un güncellenmiş bir sürümüne bağlıdır.

brew install openssl
brew install curl
brew install git

Bu benim için çalıştı ... CC=/usr/local/bin/gcc-4.2 CPP=/usr/local/bin/cpp-4.2 CXX=/usr/local/bin/g++-4.2 ama kaldırmak zorunda kaldı ve daha yüksek yakut sürümü kullanılır
Amgad

MacOS 10.14'te (Mojave) basit çözümüm, daha önce kurduğum Anaconda'yı kullanmak ve conda install gitdaha yeni bir git sürümünü ve bağımlılık paketlerini yüklemek için yazmaktı.
19'da skynaut

1

Bu uzaktan yardım sorunu ile ilgili çok fazla sorun yaşadım. Ben tüm expat, curl vb yüklü vardı ama sonunda 4.4.4 sürümü duff bulduktan sonra gcc güncelleyerek çözdü. Sadece bir yum güncellemesi yaptı ve 4.4.6 ile yeniden derlendi.



0

Bugün de aynı problemi yaşadım: git http yıllarca mutlu hizmetin ardından kırıldı. Bazı Perl lib güncellemelerinden kaynaklanıyor gibi görünüyor. Web'de bazı aklı başında öneriler denedim, hiçbiri işe yaramadı. Yeterince vardı, sadece git şeyleri kaldırdım, http://git-scm.com/ adresinden yeni bir tarball aldım , derledim ve yükledim ve her şey normale döndü. Deneyin ya da günlüklerinizin derinliklerine inebilirsiniz ...


0

CentOS sürüm 5.10 (Final) çalıştıran birkaç ek yükleme eklemek zorunda kaldım:

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

Git-1.8.5: ./configure kullanarak temiz olun 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

Buraya bir kez indim çünkü git ile çalışıyordum. Oluşturduğumda, varsayılan makefile ikili dosyayı ~ / bin / git içine yükledi. 'Git pull --rebase' komutunu çalıştırdığımda PATH'm ilk ~ / bin olduğundan beri ~ / bin içinde olanı kullandı ve sonuç olarak yardımcıları bulamadı.

'/ Usr / bin / git ...' komutunu tam yolla çalıştırarak çalıştım (alternatif olarak PATH'ımı ayarlayabilirdim).


0

Bir Windows sistemi altında Jenkins ile git kullananlar için git.exe dosyasının konumunu aşağıdaki gibi yapılandırmanız gerekir : Jenkins'i Yönet => Global Araç Yapılandırması => Git => Git yürütülebilir yolunu ve git.exe yolunu doldurun , Örneğin; C: \ Program Dosyaları \ Git \ bin \ git.exe


0

işlenmiş

1- Git'i kaldırmak zorunda kaldım:

sudo apt-get remove git

2- git -all son ekiyle yeniden kurun:

sudo apt-get install git-all

burada öğretildiği gibi: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git

3- github hesabımın tüm ayarlarını (kullanıcı adı ve e-posta) kontrol etti

Bu arada hatalarımın kaynağı olan iyi e-postayı yanılıyorum;) https://github.com/settings/profile
kullanıcı adınızı kontrol edin
https://github.com/settings/emails
e-postanızın iyi olup olmadığını kontrol edin

4- burada git öğreticisini takip ettim

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


0

Benim durumumda hiçbir şey başarılı olmadı, bir süre sonra ne olduğuna baktığımda bunu config dosyamda buldum. Oraya nasıl geldiğinden emin değilim

% 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 özelliklerini kaldırdıktan sonra her şey tekrar düzgün çalışıyordu


0

CentOS Minimal genellikle 1.8 git sürümünü yum install gitkomutla kurar .

En iyi yol, onu kaynak kodundan oluşturmak ve kurmaktır. Geçerli sürüm 2.18.0.

  1. Kaynak kodu https://mirrors.edge.kernel.org/pub/software/scm/git/ veyacurl -o git-2.18.0.tar.gz https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.18.0.tar.gz

  2. Tarafından aç tar -zxf git-2.18.0.tar.gz && cd git-2.18.0

  3. Bağımlılık paketini yürüterek yükleyin yum install autoconf curl-devel expat-devel gettext-devel openssl-devel perl-devel zlib-devel asciidoc xmlto openjade perl* texinfo

  4. Docbook2X'i kurun, rpm deposunda değil. İndirme ve yükleme

    $ 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

Ve bir unix bağlantı adı oluşturun:

ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi
  1. Derleyin ve yükleyin, https://git-scm.com/book/en/v2/Getting-Started-Installing-Git referansı

    $ make configure $ ./configure --prefix = / usr $ tüm doc bilgilerini yap $ sudo make install install-doc install-html install-info

  2. Sunucunuzu yeniden başlatın (Değilse, Unable to find remote helper for 'https'hatayla karşılaşabilirsiniz )

    $ şimdi yeniden başlat

  3. Ölçek:

    $ 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 kullanırken Windows'ta bu hatayı aldım. Git Windows için Yeniden Yükleme ve Tortoise'a İlk Başlatma Sihirbazı'nı yeniden çalıştırarak git.exe yolunu söyleyin.


0

Benim durumumda git --exec-pathdoğru yolu gösteriyordu ve git-remote-httpsvardı ama yürütme izni yoktu. Böylece chmod +x git-remote-httpsorunu düzelttim.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.