Ich mag den Weg von Micah Henning in seinem Artikel sehr (siehe Einrichten von Git-Identitäten ) zu diesem Thema sehr. Die Tatsache, dass er die Identität auf jedes erstellte / geklonte Repository anwendet und erzwingt, ist ein guter Weg, um nicht zu vergessen, dies jedes Mal einzurichten.
Grundlegende Git-Konfiguration
Deaktiviert die aktuelle Benutzerkonfiguration in git:
$ git config --global --unset user.name
$ git config --global --unset user.email
$ git config --global --unset user.signingkey
Erzwingen Sie die Identitätskonfiguration für jedes neue lokale Repository:
$ git config --global user.useConfigOnly true
Erstellen Sie einen Git-Alias für den identity
Befehl, den wir später verwenden werden:
$ git config --global alias.identity '! git config user.name "$(git config user.$1.name)"; git config user.email "$(git config user.$1.email)"; git config user.signingkey "$(git config user.$1.signingkey)"; :'
Identitätserstellung
Erstellen Sie eine Identität mit GPG (verwenden Sie gpg
oder gpg2
abhängig davon, was Sie auf Ihrem System haben). Wiederholen Sie die nächsten Schritte für jede Identität, die Sie verwenden möchten.
Hinweis: [keyid]
Hier ist die Kennung des erstellten geheimen Schlüssels. Beispiel hier:
sec rsa4096/8A5C011E4CE081A5 2020-06-09 [SC] [expires: 2021-06-09]
CCC470AE787C057557F421488C4C951E4CE081A5
uid [ultimate] Your Name <youremail@domain>
ssb rsa4096/1EA965889861C1C0 2020-06-09 [E] [expires: 2021-06-09]
Der 8A5C011E4CE081A5
nachfolgende Teil sec rsa4096/
ist die Kennung des Schlüssels.
$ gpg --full-gen-key
$ gpg --list-secret-keys --keyid-format LONG <youremail@domain>
$ gpg --armor --export [keyid]
Kopieren Sie den öffentlichen Schlüsselblock und fügen Sie ihn als GPG-Schlüssel zu Ihren GitHub / GitProviderOfChoice-Einstellungen hinzu.
Fügen Sie der Git-Konfiguration eine Identität hinzu. Wiederholen Sie dies auch für jede Identität, die Sie hinzufügen möchten:
Hinweis: hier verwende ich gitlab
zu nennen meine Identität, sondern aus Ihrer Frage kann es etwas, ex sein: gitolite
oder github
, work
usw.
$ git config --global user.gitlab.name "Your Name"
$ git config --global user.gitlab.email "youremail@domain"
$ git config --global user.gitlab.signingkey [keyid]
Richten Sie die Identität für ein Repository ein
Wenn einem neuen Repo keine Identität zugeordnet ist, wird beim Festschreiben ein Fehler angezeigt, der Sie daran erinnert, ihn festzulegen.
*** Please tell me who you are.
## parts of message skipped ##
fatal: no email was given and auto-detection is disabled
Geben Sie die gewünschte Identität in einem neuen Repository an:
$ git identity gitlab
Sie können jetzt die Gitlab- Identität festlegen .