Konfigurieren Sie Visual Studio für die Verwendung des vom System installierten Git.exe

Lesezeit: 4 Minuten

Visual Studio 2017 wird mit einer eigenen Version von Git ausgeliefert. Leider wird SSH nicht unterstützt und Es enthält kein Root-Zertifikat für den Aussteller des SSL-Zertifikats, das unsere Repositories schützt. Wenn wir also versuchen, zu klonen, zu ziehen oder zu drücken, erhalten wir diesen Fehler:

Beim Klonen des Remote-Repository ist ein Fehler aufgetreten: Git ist mit einem schwerwiegenden Fehler fehlgeschlagen. schwerwiegend: Zugriff auf „https://********/“ nicht möglich: SSL-Zertifikatsproblem: lokales Ausstellerzertifikat kann nicht abgerufen werden

Es sieht so aus, als würde Visual Studio 2017 mit einer eigenen Version von Git ausgeliefert. Die neueste Version von Git, 2.12.2, behebt das obige Problem, indem Unterstützung für die Suche in den Windows-Zertifikatspeichern hinzugefügt wird, wenn SSL-Zertifikate validiert werden. Gibt es eine Möglichkeit, Visual Studio so zu konfigurieren, dass es die global installierte Version von Git verwendet? Bonuspunkte, wenn die Lösung über Versionen von Visual Studio hinweg funktioniert.

Benutzer-Avatar
Ben

Dies ist möglicherweise etwas spät, aber für den Fall, dass andere nach diesen Informationen suchen und hier landen, können Sie Visual Studio 2017/2019 anweisen, die vom System installierte Version von Git zu verwenden, indem Sie Folgendes tun:

  1. Öffnen Sie Visual Studio, klicken Sie oben auf das Menüelement Tools.
  2. Wählen Sie unten in der Liste Optionen aus.
  3. Suchen Sie im Suchfeld für Visual Studio-Optionen nach Git
  4. Suchen Sie im Abschnitt Externe Webtools nach den beiden Einträgen, die Folgendes enthalten: $(DevEnDir)\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\Git\cmd
    $(DevEnDir)\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\Git\mingw32\bin

Menü „Externe Tools“ – Visual Studio 2017
Bitte beachten Sie, dass dieser Screenshot bei Google gefunden wurde, da ich meinen Computer nicht für aktuelle Screenshots bei mir habe. Es kann also etwas anders aussehen.

  1. Ersetzen Sie diese durch den Speicherort der auf Ihrem System installierten Git-Version.

    Beispiel für Schritt fünf wäre so etwas wie:

    C:\Program Files\Git\bin

    C:\Program Files\Git\mingw64\bin

  2. Schließlich müssen Sie Visual Studio vollständig schließen. Ich würde einen tatsächlichen Neustart empfehlen, nur um auf Nummer sicher zu gehen, da diese Änderungen manchmal auch nach dem erneuten Öffnen von Visual Studio nicht angezeigt werden.

Benutzer-Avatar
Asier Peña

Die von Visual Studio installierte Git-Version verursachte auch auf meiner Seite Probleme, daher habe ich den gesamten Ordner ersetzt, in dem Visual Studio seine eigene Version bereitstellt:

C:\Programme (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\Git\

Mit der letzten heruntergeladenen 32-Bit-Version von hier. Und nach dem Neustart der IDE sind die Probleme verschwunden, eine Option, dies in den Visual Studio-Einstellungen zu ändern, wäre willkommen, aber zumindest funktioniert diese Problemumgehung.

Visual Studio 2019 und höher

Die neueren Versionen von Visual Studio verwenden direkt den unter Windows installierten Git-Client. Sie können ihn mithilfe der folgenden Anweisungen einfach über die Eingabeaufforderung aktualisieren.


Ich habe keine Antwort auf Ihre direkte Frage in gefunden deutlichaber ich habe ähnliche SSL-Zertifikatsprobleme, die ich mithilfe des folgenden Links gelöst habe:

Git in VS2017 mit selbstsigniertem SSL

Kurz gesagt: Suchen Sie den Speicherort des Zertifikatsordners, den Visual Studio verwendet. Es wird ungefähr so ​​sein:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\Git\mingw32\ssl\certs

Ich habe dies gefunden, indem ich in das Verzeichnis /2017 gegangen bin und einfach von dort aus gesucht habe.

Als nächstes: Öffnen Sie ca-bundle.crt und kopieren Sie Ihr vollständiges base64-codiertes Zertifikat (einschließlich Anfangs- und End-Tags) in diese Datei und speichern Sie es.

Testen Sie mit einem Abruf oder so etwas.

In der Hoffnung, dass dies mindestens die Hälfte Ihres Problems löst!

Ich habe einen symbolischen Link zum vom System installierten Git-Ordner verwendet. 32-Bit oder 64-Bit funktioniert. Auf diese Weise musste ich nicht mehrere Git-Installationen haben. Das Problem bei dieser Methode ist, dass bei einer Aktualisierung von Visual Studio das installierte Git mit seiner Version beschädigt wird, sodass der Link entfernt werden muss.

Keine perfekte Antwort, ich stimme zu, dass es schön wäre, die vom System installierte Version zu verwenden oder die eingebettete Version zu konfigurieren.

Ein guter Anfang ist Bens Antwort (und bearbeitet von Patrick Mevzek) oben, in der die Konfiguration des externen Tools-Ordners geändert wird. Aber leider verwendet Visual Studio immer noch seine eigene Implementierung. Sie können dies überprüfen, indem Sie Umgebungsvariablen wie diese festlegen:
GIT_TRACE mit dem Pfad der zu schreibenden Protokolldatei als Wert und
GIT_TRACE_SETUP mit dem Wert ‘true’ (ohne das ‘).
Das einfache Kopieren der globalen Installation in den VS-Git-Ordner hat den schlechten Nebeneffekt, dass die Root-Konfigurationsdatei eine andere als die globale ist. Sie könnten diese VS-Konfiguration manuell bearbeiten, um die globale einzuschließen, aber ein Update hat dies zu einem kreisförmigen Include gemacht, was dazu führte, dass git überhaupt nicht funktionierte (sogar abgesehen von VS). Für mich besteht die Lösung darin, diesen VS-Git-Ordner umzubenennen (oder zu löschen), wodurch VS gezwungen wird, die globale Installation zu verwenden. Leider müssen Sie diesen Ordner nach jedem VS-Update erneut umbenennen/löschen. Aber zumindest bringt ein VS-Update deine globale Git-Installation nicht durcheinander und Git verwendet immer die gleiche Konfiguration. Wäre schön, wenn Microsoft uns konfigurieren ließe, welche Installation verwendet werden soll, anstatt einen fest codierten Pfad zu verwenden.

1011240cookie-checkKonfigurieren Sie Visual Studio für die Verwendung des vom System installierten Git.exe

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy