GitHub: Fout bij het klonen van mijn privé-repository

Ik probeer mijn GitHub-project te klonen met behulp van de HTTPS-URL, maar het mislukt met een foutmelding:

$ git clone https://[email protected]/foo/foo-private.git
Cloning into foo-private...
Password:
error: error setting certificate verify locations:
  CAfile: /bin/curl-ca-bundle.crt
  CApath: none
 while accessing https://[email protected]/foo/foo-private.git/info/refs
fatal: HTTP request failed

Wat doe ik verkeerd?


Antwoord 1, Autoriteit 100%

Ik heb dit op Windows gezien, met MSYGIT 1.7.2.3. U moet het pad bevestigen naar bin / curl-ca-bundel.crt . Ik moest het absolute pad opgeven, met behulp van back-slashes:

Git Config-system http.sslcainfo "C: \ programmabestanden (x86) \ git \ bin \ curl-ca-bundle.crt" 

Dit resulteert in wijzigingen in [Git-install-dir] / etc / gitconfig-bestand, dat ook rechtstreeks kan worden bewerkt.

(originele oplossingen gevonden op http://github.com/blog/642- Smart-http-support )


Antwoord 2, Autoriteit 29%

Ik heb het probleem opgelost met het installeren van de GIT van: https://git-for-windows.github.io/
Zoek het CERT-bestandspad:

D: \ Program Files \ Git \ MingW64 \ SSL \ CERTS \ CA-BUNDLE.CRT

Configureer het GIT-pad:

GIT Config-system http.sslcainfo “D: \ -programma
Bestanden \ Git \ MingW64 \ SSL \ CERTS \ CA-bundel.crt “

Probeer het opnieuw


Antwoord 3, Autoriteit 7%

Als u MSYS2 …

gebruikt

Installeer gewoon de certificaatpakketten met de volgende opdrachten:

32 bits

pacman -S mingw-w64-i686-ca-certificates ca-certificates

64 bits

pacman -S mingw-w64-x86_64-ca-certificates ca-certificates

Antwoord 4, autoriteit 4%

Als u Cygwin gebruikte, zou u het pakket ca-certificateskunnen installeren met
apt-cyg:

wget rawgit.com/transcode-open/apt-cyg/master/apt-cyg
install apt-cyg /usr/local/bin
apt-cyg install ca-certificates

Hoe installeer ik een cygwin-pakket vanaf de opdrachtregel?


Antwoord 5, autoriteit 4%

git config --global http.sslverify "false" 

Zal het probleem oplossen.
Daarna verschijnt een pop-upvenster om uw gebruikersnaam en wachtwoord in te voeren


Antwoord 6, autoriteit 2%

OPGELOST:
Ik kreeg deze foutmelding toen ik een update voor het Git Windows-installatieprogramma installeerde. Wat er gebeurde, is dat ik het niet met beheerdersrechten heb geïnstalleerd, dus werd Git geïnstalleerd in “C:\Users\my_name\AppData\Local\Programs” in plaats van “C:\program Files”. Git opnieuw installeren als administrator toegestaan om het in C:\program Files te plaatsen en alles ging weer goed!


Antwoord 7, autoriteit 2%

Dit werkte voor mij (ik gebruik Manjaro linux). Ik voer de cmd uit om ca-certificaten te bekijken:

$ curl-config --ca
**/etc/ssl/certs/ca-certificates.crt**

Maar eigenlijk vond ik de certificaten op het pad:

**/etc/ca-certificates/extracted/ca-bundle.trust.crt**

Voeg vervolgens de configuratie toe aan ~/.gitconfig (indien niet bestaande, maak deze aan):

**vim ~/.gitconfig**
[http]
    sslVerify = true
    sslCAinfo = /etc/ca-certificates/extracted/ca-bundle.trust.crt
[user]
    email = <email of github account>
    name = <username of github account>

Het werkt!

.rbenv]$ git pull
remote: Counting objects: 70, done.
remote: Compressing objects: 100% (47/47), done.
remote: Total 70 (delta 39), reused 12 (delta 12), pack-reused 6
Unpacking objects: 100% (70/70), done.
From https://github.com/sstephenson/rbenv
   c43928a..efb187f  master     -> origin/master
 + 37ec781...7e57b52 user-gems  -> origin/user-gems  (forced update)
Updating c43928a..efb187f
Fast-forward
 libexec/rbenv-init         |  4 ++--
 libexec/rbenv-version-file |  1 +
 test/init.bats             |  2 +-
 test/test_helper.bash      | 25 +++++++++++++++----------
 4 files changed, 19 insertions(+), 13 deletions(-)

Antwoord 8

git config --system http.sslcainfo /bin/curl-ca-bundle.crt

Dit werkt. Je hoeft niet het volledige pad te geven.


Antwoord 9

Ik werd hiermee geconfronteerd terwijl git pull. Voor de mijne bewerkte ik het globale git-configuratiebestand dat het probleem oploste.

Ga naar je thuismap en open het .gitconfig-bestand. Meestal C:\Users\.gitconfig

Als het bestand er niet is, maak het dan

[http]
sslcainfo = E:\systools\git-1.8.5.2\bin\curl-ca-bundle.crt

Daar moet je je eigen git-installatiepad opgeven. Ik heb hier een draagbare versie van git gebruikt.

Dan zal git clone / pull het werken.


Antwoord 10

Als je de Git-opdrachtshell gebruikt die met de GitHub voor Windows-app wordt geïnstalleerd, kunnen dit en verschillende andere problemen optreden na een update. Start gewoon de Git Hub Windows-app en sluit deze weer af. De shell werkt dan weer goed. Het probleem is dat de update pas wordt voltooid als de Windows-toepassing wordt uitgevoerd. Als u alleen de shell erop gebruikt, wordt de update niet voltooid.


Antwoord 11

Ik heb dit op mijn Github voor Windows gezien.

Ik raad aan om Github voor Windows te verwijderen en opnieuw te installeren.

Hiervoor heb ik verschillende manieren geprobeerd zonder succes, maar deze oplossing werkte voor mij!


Antwoord 12

Op Windows met msysgit had ik deze fout en de oorzaak was mijn toevoegingen van onze zakelijke proxycertificaten.

Als je je curl-ca-bundle.crt bewerkt, moet je zeker zijn van je lineendings. In het geval van de curl-ca-bundle moet je lineendings in Linux-stijl gebruiken.

> git ls-remote --tags --heads https://github.com/oblador/angular-scroll.git
fatal: unable to access 'https://github.com/oblador/angular-scroll.git/': error setting certificate verify locations:
  CAfile: C:\Program Files (x86)\Git\bin\curl-ca-bundle.crt
  CApath: none

Je kunt notepad++ gebruiken om de regeleinden naar Linux te converteren (linefeed).


Antwoord 13

Terzijde: dit probleem kan zich voordoen in Windows als de gebruiker die git probeert te gebruiken, anders is dan de gebruiker die het heeft geïnstalleerd. De fout kan erop wijzen dat git geen toegang heeft tot de certificaatbestanden. Door git als beheerder te installeren en het antwoord van @rogertoday te gebruiken, is mijn probleem opgelost.


Antwoord 14

Ik heb een goede oplossing gevonden voor het toevoegen/bijwerken van de CA certificaten op RHEL/CentOS 6, de oorzaak van het gerapporteerde probleem.

Sinds ze verouderde distributies zijn, zijn de cacert-autoriteiten in dat systeem niet bijgewerkt tot het uitvoeren van het commando sudo yum update.

Ik realiseerde het probleem pas toen de GIT_CURL_VERBOSE-modus het probleem met het cacert-pad weergeeft.


Antwoord 15

In mijn win10-geval heb ik twee versiesvan .gitconfig

  • de eerste staat in C:\Program Files\Git\etc
  • de tweede staat in C:\Users\<user>

Het commando

git config --system http.sslcainfo "C:\Program Files\Git\mingw64\ssl\certs\ca-bundle.crt"

Inderdaad manteert wijzigingen in C:\Program Files\Git\etc, maar Git op de een of andere manier gebruikt Config in C:\Users\<user>

Dus met Kladblok, heb ik de tweede gewijzigd .gitconfigen Git nam eindelijk de juiste configuratie en werkte.


Antwoord 16

Op Linux had ik deze foutmelding en heeft deze opgelost door sudo update-ca-certificateste gebruiken.


Antwoord 17

Voor mij was wat het probleem opgelost was toen ik op mijn Windows 10-box was, heb ik geprobeerd het verwijderen van git en resintalling, met behulp van Windows Cmd als standaard niet Git Bash

CMD openen en voer het volgende uit

//Once installed try to resintall the bin folder 
git config --system http.sslcainfo \bin/curl-ca-bundle.crt
//disable ssl verification
git config --global http.sslverify "false"
//Then try to clone repo again
git clone [email protected]:account/someproject.git

Antwoord 18

Als iemand anders geconfronteerd wordt met dit probleem in Git voor Windows en niet curl-ca-bundle.crtoveral op uw systeem heeft, zelfs na het opnieuw installeren, is dit het proces dat ik volgde:

  1. Download de nieuwste versie van Curl hier: curl download spiegel
  2. extraheer en navigeer naar curl-**.**.*/libin de opdrachtregel
  3. Voer het ./mk-ca-bundle.prl
  4. kopiëren ca-bundle.crtnaar uw GIT-pad en update de configuratie zoals vermeld in andere antwoorden

Shout Out to deze gist voor het helpen bij het krijgen van de installatie.


Antwoord 19

Ik heb dit probleem opgelost op een Windows Server 2016 door het opnieuw te installeren en door te kiezen “Native Windows Secure Channel Library” op de “Kiezen HTTPS TRANSPORT BACKEND” Installeer stap.


Antwoord 20

De oplossing die voor mij werkt in windows 64bitsis de volgende

git config –system http.sslverify false


Antwoord 21

Voor MinGitgebruikers op Windows 10:

Je moet kleine aanpassingen maken aan @mstrap’s antwoord.

git config --system http.sslcainfo "<PATH-TO-MINGIT>\mingw64\ssl\certs\ca-bundle.crt"

Antwoord 22

Ik ben deze fout tegengekomen na het updaten naar Visual Studio 2019 16.10.2 (vanaf 16.10.0), terwijl Git voorheen correct werkte.

Ik heb Git niet apart geïnstalleerd. (Of, anders gezegd, ik gebruik Git alleen als onderdeel van Visual Studio.)

Ik heb dit probleem opgelost door het bestand "ca-bundle.crt"te zoeken in "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\Git\mingw32\ssl\certs\ca-bundle.crt"en kopieer het vervolgens naar de map waarin het aangeeft dat het niet gevonden kan worden, "C:\Program Files\Git\mingw64\ssl\certs\ca-bundle.crt".

Houd er rekening mee dat ik de mappen “\mingw64\ssl\certs” moest maken, omdat deze voorheen niet bestonden.

Na het bestand daar te hebben gekopieerd, kon Git onmiddellijk opnieuw synchroniseren zonder Visual Studio opnieuw te starten.


Antwoord 23

Ik heb dit probleem kunnen oplossen met het volgende commando.

git config –system http.sslverify false


Antwoord 24

Ik kreeg deze foutmelding nadat ik git over harde schijven had verplaatst. Verwijderen en opnieuw installeren op de nieuwe locatie vaste dingen


Antwoord 25

Op git voor Windows kun je ook opnieuw installerenen de Windows native certificaatvalidatiemethode selecteren (OpenSSL is standaard). Hierdoor wordt de OpenSSL-verificatie overgeslagen en wordt in plaats daarvan de native Windows-verificatie gebruikt, waarvoor geen aparte tool (OpenSSL) en certificaten nodig zijn.

Werkte perfect voor mij 🙂


Antwoord 26

Het volgende commando

git clone git://github.com/username/projectname.git

werkte voor mijn behoeften, maar ik neem aan dat je meer wilt dan alleen-lezen toegang, toch?

Other episodes