Wie setzen Sie den Benutzernamen fest, den Mercurial für Commits verwendet?
-
05-07-2019 - |
Frage
Wenn ich so etwas in so diesen begangen habe:
hg commit -m "username question"
Ich sehe diese Ausgabe:
No username found, using 'WindowsVistaAdmin@ChunkyMonkey' instead
ChunkyMonkey
ist mein Windows -Maschinenname und offensichtlich WindowsVistaAdmin
ist der Benutzer, in dem ich wie auf dieser Maschine angemeldet bin.
Wie kann ich den Benutzernamen auf etwas respektableres oder zumindest prägnanter einstellen?
Lösung
In deiner ~/.hgrc
(*nix) oder mercurial.ini
(Windows) Datei:
[ui]
username = First Last <email@address.com>
(mercurial.ini
ist in C:\Documents and Settings\[username]\
für XP und niedriger, C:\Users\[username]\
für Vista und höher. Sie können auch rennen hgtk userconfig
Wenn Sie TortoiseHg installiert haben und es so tun.)
Andere Tipps
Sie können Ihren Benutzernamen in der Befehlszeile direkt angeben, wenn Sie -Config verwenden möchten. z.B
hg --config ui.username=frymaster -m "comment here" commit
Tatsächlich können Sie mit diesem Befehl alles in Ihrem .hgrc überschreiben. Schauen Sie sich einfach Ihren .hgrc an und beachten Sie das Format:
[section]
key=val
das übersetzt direkt zu
hg --config section.key=val
Information von hier:
Einrichten eines Benutzernamens
Wenn Sie zum ersten Mal versuchen, das HG Commit zu betreiben, ist es nicht garantiert, dass es erfolgreich ist. Mercurial zeichnet Ihren Namen und Ihre Adresse mit jeder Änderung auf, die Sie begehen, damit Sie und andere später sagen können, wer jede Änderung vorgenommen hat. Mercurial versucht, automatisch einen vernünftigen Benutzernamen zu ermitteln, mit dem Sie die Änderung begehen können. Es wird jede der folgenden Methoden versuchen: in der Reihenfolge:
- Wenn Sie im Befehl HG Commit in der Befehlszeile eine -U -Option angeben, gefolgt von einem Benutzernamen, wird dies immer die höchste Vorrang vorliegt.
- Wenn Sie die Hguser -Umgebungsvariable festgelegt haben, wird dies als nächstes überprüft.
- Wenn Sie eine Datei in Ihrem Home -Verzeichnis namens .hgrc mit einem Benutzernameneintrag erstellen, wird dies als nächstes verwendet. Um zu sehen, wie der Inhalt dieser Datei aussehen sollte, lesen Sie den Abschnitt „Erstellen einer Mercurial -Konfigurationsdatei“ unten.
- Wenn Sie die E -Mail -Umgebungsvariable festgelegt haben, wird dies als nächstes verwendet.
- Mercurial wird Ihr System abfragen, um Ihren lokalen Benutzernamen und Hostnamen herauszufinden und einen Benutzernamen aus diesen Komponenten zu erstellen. Da dies häufig zu einem Benutzernamen führt, der nicht sehr nützlich ist, wird eine Warnung gedruckt, wenn dies dies tun muss.
Wenn alle diese Mechanismen fehlschlagen, fällt Mercurial fehl und druckt eine Fehlermeldung. In diesem Fall können Sie erst dann verpflichten, wenn Sie einen Benutzernamen einrichten.
Sie sollten sich an die HGUser -Umgebungsvariable und die Option -u -Option zum HG Commit -Befehl denken, um die Standardauswahl des Benutzernamens durch Mercurial zu überschreiben. Für den normalen Gebrauch ist der einfachste und robusteste Weg, um einen Benutzernamen für sich selbst festzulegen, indem Sie eine .hgrc -Datei erstellen. Weitere Informationen finden Sie unten.
So sieht meine Windows /users/xxx/mercurial.ini aus. Ich muss keinen Benutzernamen oder Passwörter für irgendetwas eingeben. Sieht so aus, als wäre es Repo spezifisch. Ich habe TortoiseHg installiert, nicht sicher, ob das einen Unterschied macht.
[ui]
username=mbroekhuis
[auth]
repo.prefix=http://myrepo
repo.username=mbroekhuis
repo.password=secret