Warum erhalte ich auf Github ständig die Meldung „Authentifizierung fehlgeschlagen“, wenn ich das Win10-Linux-Subsystem verwende?

Warum erhalte ich auf Github ständig die Meldung „Authentifizierung fehlgeschlagen“, wenn ich das Win10-Linux-Subsystem verwende?

Ich verwende eine Maschine mit Windows 10, habe den Entwicklermodus aktiviert und das Linux-Subsystem installiert. Wenn ich zu Bash wechsle, versuche ich, einen einfachen Klonbefehl von Git aus auszuführen:

git clone https://github.com/PrivateRepo/my-private-repo.git

Natürlich habe ich die URL hier ein wenig bereinigt, aber Sie verstehen, was ich meine. Die Antwort, die ich zunächst auf diesen Befehl erhielt, war folgende:

fatal: Zugriff nicht möglich 'https://github.com/PrivateRepo/my-private-repo.git/': Überprüfung des Serverzertifikats fehlgeschlagen. CA-Datei: /etc/ssl/certs/ca-certificates.crt CRL-Datei: keine

Ich habe ein paar Stack Overflow-Antworten gesehen, die darüber sprechen, aber um ehrlich zu sein, kenne ich dierichtigMöglichkeit, mit diesem Fehler umzugehen. Allerdings kenne ich eine falsche Möglichkeit, den Fehler komplett zu umgehen, indem man den folgenden Befehl ausführt:

git config --global http.sslverify false

Und das scheint zu funktionieren. Es ist wahrscheinlich schlecht, dass ich alle SSL-Verifizierungen deaktiviere, aber ich muss das zum Laufen bringen, und das ist nicht wirklich der Sinn dieser Frage (auf die ich gleich hinaus will). Aber nebenbei bemerkt, wenn Sie wissen, wie man das richtig behebt, bin ich ganz Ohr.

Als nächstes habe ich meinen Befehl erneut ausgeführt git clone. Dieses Mal wurde ich zur Eingabe eines Benutzernamens und Passworts aufgefordert, aber letztendlich schlug der Befehl aus einem anderen Grund fehl. So sah es aus:

git clone https://github.com/PrivateRepo/my-private-repo.git
Cloning into 'my-private-repo'...
Username for 'https://github.com': myuser
Password for 'https://[email protected]': 
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/PrivateRepo/my-private-repo.git'

Ich kann Ihnen jedoch versichern, dass der von mir eingegebene Benutzername und das Passwort korrekt waren. Ich habe auch Git für Windows installiert, und als ich es dort ausprobiert habe, hat alles funktioniert. Die einzige Einschränkung war, dass anstatt mich in der Befehlszeile nach einem Passwort zu fragen, ein separates Fenster zur Eingabe der Anmeldeinformationen geöffnet wurde und ich dort auch nach meinem sechsstelligen 2FA-Code gefragt wurde. Dann wurde es problemlos geklont. Mir ist aufgefallen, dass dabei ein persönlicher Zugriffstoken in Github erstellt wurde. Also habe ich einen weiteren persönlichen Zugriffstoken erstellt und versucht, ihn manuell in Bash zu verwenden. Im Grunde habe myuserich statt des Benutzernamens Folgendes eingegeben:myuser:mytoken

git clone https://github.com/PrivateRepo/my-private-repo.git
Cloning into 'my-private-repo'...
Username for 'https://github.com': myuser:a1abcdefab2a34567ab8901a2bc3d4567890a1b2
Password for 'https://myuser:[email protected]': 
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/PrivateRepo/my-private-repo.git'

Aber wie Sie sehen, ist es trotzdem fehlgeschlagen. Wie bekomme ich Git in Bash unter Windows zum Laufen?

Antwort1

Sie verwenden die Implementierung von gitauf Ihrer aktuell laufenden Linux-Distribution, die Sie wahrscheinlich nicht eingerichtet haben. Versuchen Sie git.exestattdessen Folgendes:

git.exe clone https://github.com/PrivateRepo/my-private-repo.git

Sie können aliasden Befehl in Ihrem verwenden .bashrc:

alias git='git.exe'

Antwort2

Sie müssen nur Ihren Benutzernamen verwenden und dann anstelle Ihres Passworts Ihren Zugriffstoken. Ihr Passwort benötigen Sie nicht, da es durch den Token ersetzt wird.

verwandte Informationen