Woher wissen Sie, wie der Git-Benutzername und die E-Mail-Adresse während der Konfiguration gespeichert wurden?


108

Während der Konfiguration habe gitich diese beiden Befehle ausgeführt:

git config --global user.name "My Name"

git config --global user.email "myemail@example.com"

Ich bezweifle jedoch, ob ich einen Tippfehler gemacht habe oder nicht. So gibt es einen Befehl , um das zu wissen , Namen und E - Mail , die gitwährend der Konfiguration gespeichert? Natürlich kann ich das anhand des git logBefehls anhand des Commit-Verlaufs erkennen. Aber dafür muss ich mich verpflichten, oder? Kann ich das mit Hilfe der Kommandozeile wissen?


Ändern Sie Ihr Betriebssystem oder so etwas?
Dinith

Ja, manchmal formatiere ich mein System, um ein anderes Betriebssystem auszuprobieren.
Jebin Philipose

Antworten:


170

Der Befehl git config --listlistet die Einstellungen auf. Dort solltest du auch finden user.nameund user.email.


Beeindruckend! Das hilft! Aber das ist eine lange Liste und ich wusste nicht, dass die Konfiguration so viele Optionen hat. Danke für Ihre Antwort!
Jebin Philipose

@JebinPhilipose Ich bin sicher, dass Sie jetzt upvoten können, da Sie die hier erwähnte Anforderung von 15 Reputationen überschritten haben, um upvoten zu können . Ansonsten sollten Sie eine der Antworten als akzeptierte Antwort markieren, die für Sie zur Lösung Ihres Problems am nützlichsten war. Sie müssen auf das Häkchen unter den Abstimmungsschaltflächen klicken, um es als akzeptierte Antwort zu markieren. Sie erhalten auch +2, wenn Sie dies tun :). Dies hilft der Community, sich auf unbeantwortete Fragen zu konzentrieren.
RBT

37

In Anbetracht dessen, was @Robert gesagt hat, habe ich versucht, mit dem configBefehl herumzuspielen, und es scheint, dass es einen direkten Weg gibt, sowohl den Namen als auch die E-Mail zu kennen.

Geben Sie Folgendes ein, um den Benutzernamen zu ermitteln:

git config user.name

Geben Sie Folgendes ein, um die E-Mail zu erfahren:

git config user.email

Diese beiden geben nur den Namen bzw. die E-Mail-Adresse aus und man muss nicht die gesamte Liste durchsehen. Kommt praktisch.


25

Führen Sie in Ihrem Git-Repository-Verzeichnis aus git config user.name.

Warum ist es wichtig, diesen Befehl in Ihrem Git-Repo-Verzeichnis auszuführen?

Wenn Sie sich außerhalb eines Git-Repositorys befinden, erhalten git config user.nameSie den Wert von user.nameauf globaler Ebene. Wenn Sie ein Commit durchführen, wird der zugehörige Benutzername auf lokaler Ebene gelesen .

Obwohl dies unwahrscheinlich ist, user.namewird es als fooauf globaler Ebene definiert, aber barauf lokaler Ebene. Wenn Sie dann git config user.nameaußerhalb des Git-Repo-Verzeichnisses ausgeführt werden, gibt es bar. Wenn Sie jedoch wirklich etwas festschreiben, ist der zugehörige Wert foo.


Git-Konfigurationsvariablen können in 3 verschiedenen Ebenen gespeichert werden. Jede Ebene überschreibt die Werte in der vorherigen Ebene.

1. Systemebene (gilt für jeden Benutzer im System und alle seine Repositorys)

  • zu sehen, git config --list --system(möglicherweise müssen sudo)
  • zu setzen, git config --system color.ui true
  • um die Systemkonfigurationsdatei zu bearbeiten, git config --edit --system

2. Globale Ebene (Werte, die für Sie als Benutzer persönlich sind.)

  • sehen, git config --list --global
  • zu setzen, git config --global user.name xyz
  • um die globale Konfigurationsdatei zu bearbeiten, git config --edit --global

3. Repository-Ebene (spezifisch für dieses einzelne Repository)

  • sehen, git config --list --local
  • zu setzen, git config --local core.ignorecase true( --localoptional)
  • zum Bearbeiten der Repository-Konfigurationsdatei git config --edit --local( --localoptional)

Wie kann ich alle Einstellungen anzeigen ?

  • Ausführen git config --list, System- , globale und (falls in einem Repository) lokale Konfigurationen anzeigen
  • Ausführen git config --list --show-originzeigt auch die Ursprungsdatei jedes Konfigurationselements an

Wie lese ich eine bestimmte Konfiguration?

  • Laufen git config user.nameSie user.namezum Beispiel , um zu bekommen .
  • Sie können auch Optionen angeben --system, --global, --localdiesen Wert auf einem bestimmten Niveau zu lesen.

Referenz: 1.6 Erste Schritte - Erstes Git-Setup


Vielen Dank für die Beantwortung und ausführliche Erklärung.
Jebin Philipose

@sam Ich bin im lokalen Repo, setze den Benutzernamen und die E-Mail. Aber Git Push verwendet immer noch den globalen Namen. Warum ist das so?
CKM

15

Wenn Sie den Benutzernamen und die E-Mail-Adresse überprüfen oder festlegen möchten, können Sie den folgenden Befehl verwenden

Überprüfen Sie den Benutzernamen

git config user.name

Benutzernamen festlegen

git config user.name "your_name"

Check deine E-Mails

git config user.email

Stellen Sie Ihre E-Mail ein / ändern Sie sie

git config user.email "your@email.com"

Liste / zeige alle Konfigurationen

git config --list


3

Manchmal funktionieren die oben genannten Lösungen in MacBook nicht, um Benutzername und Passwort zu erhalten.

IDK warum?, Hier habe ich eine andere Lösung.

$ git credential-osxkeychain get
host=github.com
protocol=https

this will revert username and password

1

Fügen Sie hier meine zwei Cent hinzu. Wenn Sie user.name oder user.email nur ohne ausführliche Ausgabe erhalten möchten.

Geben Sie auf liunx Folgendes ein git config --list | grep user.name.

Geben Sie unter Windows Folgendes ein git config --list | findstr user.name.

Dadurch erhalten Sie nur den Benutzernamen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.