2016-05-30 2 views
5

Also ich laufen OpenSUSE Leap 42.1 und Git 2.6.6. Bis heute hatte ich keine Probleme beim Drücken/Ziehen/Abrufen von einem Remote-GitHub-Repo.Linux Git: Kann auf remote nicht zugreifen: Fehler Einstellung Zertifikat überprüfen Standorte

Nun, heute, ich habe diese Fehlermeldung:

fatal: unable to access 'https://github.com/myName/myProject.git/': error setting certificate verify locations: 
    CAfile: /etc/ssl/certs/ca-certificates.crt 
    CApath: none 

Immer wenn ich tun ein Push/Pull/holen, ich diese. Mein erster Gedanke war, den bereitgestellten Dateipfad zu überprüfen, und in/etc/ssl/certs existiert keine Datei namens ca-certificates.crt.

Also ... Ich bin mir nicht ganz sicher, was ich tun soll. Nicht sicher, warum das plötzlich aufgehört hat zu funktionieren, vielleicht hat ein OS oder Git Update es kaputt gemacht? So oder so, in die richtige Richtung zeigend.

Danke.

+0

Vielleicht hat GitHub etwas verändert. Funktioniert 'git -c http.sslVerify = false fetch'? – Asenar

+0

Ja, das funktioniert. Ich möchte jedoch nicht vollständig ssl deaktivieren. – user2223059

+0

Es scheint ein Problem mit github und seinem selbstsignierten Zertifikat zu sein. Versuchen Sie, darüber im Internet oder SO – Asenar

Antwort

0

überprüfen Sie, dass es möglicherweise eine SSL-Datei woanders gibt. Ich habe das gleiche Problem in Windows 10 Installation und ich löste es, indem Sie ein usr-Verzeichnis und kopieren Sie den Inhalt des ssl-Verzeichnisses in das Verzeichnis usr.

5

Offenbar ändern sich manchmal die Cert-Dateien, so dass Sie ein Bündel von mehreren behalten müssen, eher das einzige! Darüber hinaus werde ich empfehlen die sichere Verbindung, um zu versuchen und zu pflegen vielmehr, dass es aus mit dem Drehen:

git config --system http.sslVerify false 

Oder noch schlimmer:

git config --global http.sslVerify false 

Das ist eine sehr schlechte Praxis und sollte unter allen Ursachen vermieden werden.

Also zuerst, schauen Sie sich diese Bundle-Cert-Datei. In Windows, es unter dem git Installation dir befindet, so etwas wie:

D:\Program Files\Git\mingw64\ssl\certs\ca-bundle.crt

In Linux, Sie so etwas wie diese versuchen kann (ich habe nicht versuchen, diese aber):

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

oder vielleicht der andere Ort:

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

Unabhängig davon, wo es vielleicht oder das Betriebssystem Sie verwenden, wenn Sie dieses Bündel Zertifizierung Datei erhalten Sie dann müssen Informieren Sie git, um dieses Zertifikat zu konfigurieren. Sie können die git.config Datei ändern, warum, aber eine direkte Möglichkeit ist:

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

Ich hoffe, es hilft. Für weitere Informationen gibt es dieses andere discussion. Bitte lassen Sie mich wissen, wenn es hilft.

Verwandte Themen