Speichern von Benutzername und Passwort in Git

18

Wenn ich es tue

git push

Ich bekomme die Eingabeaufforderung wie

Username for 'https://github.com':

dann gebe ich meinen Benutzernamen wie manuell ein

Username for 'https://github.com': myusername

und dann Enterdrücke ich und bekomme eine Aufforderung zur Eingabe meines Passworts

Password for 'https://[email protected]':

Ich möchte, dass der Benutzername automatisch geschrieben wird, anstatt ihn ständig manuell eingeben zu müssen.

Ich habe es versucht, xdotoolaber es hat nicht geklappt.

habe ich schon getan

git config --global user.name myusername
git config --global user.email [email protected]

Trotzdem werde ich immer aufgefordert, manuell zu tippen

GypsyCosmonaut
quelle
Sie wissen, dass Sie Anmeldeinformationen mit git speichern können, oder?
Diego Roccia
Sie sollten einen SSH-Schlüssel auf GitHub einrichten und diesen stattdessen verwenden.
Stephen Kitt
@DiegoRoccia ja, das habe ich auch in der Frage erwähnt, aber es hilft nicht.
GypsyCosmonaut
Sie können wie git config credential.helper storehier beschrieben verwenden: stackoverflow.com/questions/11403407/… In diesem Fall speichern Sie das Kennwort nicht im Klartext in der Ursprungs-URL, sondern in einer Datei in Ihrem Profil. (Auch nicht verschlüsselt)
Oleg Rudenko

Antworten:

11

Eigentlich haben Sie dort die Autoreninformationen nur für die Commits eingerichtet. Sie haben die Anmeldeinformationen nicht gespeichert. Anmeldeinformationen können auf zwei Arten gespeichert werden:

  1. Verwenden der Git-Anmeldeinformationsfunktionen: https://git-scm.com/docs/git-credential-store
  2. Ändern Sie die Ursprungs-URL in " https: // Benutzername: [email protected] ".
  3. Eine dritte Alternative ist die Verwendung eines SSH-Schlüssels (wie @StephenKitt sagte). Für die Github-Konfiguration finden Sie alle erforderlichen Informationen auf der GitHub- Hilfeseite
Diego Roccia
quelle
20

Geben Sie im Terminal Folgendes ein, um den Speicher für Anmeldeinformationen zu aktivieren:

$ git config --global credential.helper cache

Sie können das Standard-Timeout für den Kennwort-Cache (in Sekunden) aktualisieren:

# This cache timeout is in seconds
$ git config --global credential.helper 'cache --timeout=3600' 

Sie können auch verwenden (aber bitte verwenden Sie die einfachen Anführungszeichen, andernfalls können doppelte Anführungszeichen für einige Zeichen unterbrochen werden):

$ git config --global user.name 'your user name'
$ git config --global user.password 'your password'
Prosti
quelle