Git deinen GPG-Schlüssel mitteilen
Wenn du einen GPG-Schlüssel verwendest, der mit deiner Committer-Identität und deiner verifizierten E-Mail-Adresse übereinstimmt, die mit deinem Konto auf Ihre GitHub Enterprise Server-Instance verknüpft ist, kannst du mit dem Signieren von Commits und Tags beginnen.
Wenn du keinen GPG-Schlüssel hast, der deiner Beitragender-Identität entspricht, musst du deinen Schlüssel mit einer E-Mail-Adresse verknüpfen. Weitere Informationen findest du unter Verknüpfen einer E-Mail-Adresse mit deinem GPG-Schlüssel.
Wenn du mehrere GPG-Schlüssel hast, musst du Git mitteilen, welcher zu verwenden ist.
-
Öffne Terminal .
-
Wenn du Git zuvor so konfiguriert hast, dass beim Signieren mit
--gpg-sign
ein anderes Schlüsselformat verwendet wird, hebe diese Konfiguration auf, damit das Standardformatopenpgp
verwendet wird.git config --global --unset gpg.format
-
Verwende den Befehl
gpg --list-secret-keys --keyid-format=long
, um die Langform der GPG-Schlüssel aufzulisten, für die du sowohl über einen öffentlichen als auch einen privaten Schlüssel verfügst. Zum Signieren von Commits oder Tags ist ein privater Schlüssel erforderlich.Shell gpg --list-secret-keys --keyid-format=long
gpg --list-secret-keys --keyid-format=long
Hinweis: Bei einigen GPG-Installationen unter Linux musst du möglicherweise stattdessen
gpg2 --list-keys --keyid-format LONG
verwenden, um eine Liste einer vorhandenen Schlüssel anzuzeigen. In diesem Fall musst du auch Git für die Verwendung vongpg2
konfigurieren, indem dugit config --global gpg.program gpg2
ausführst. -
Kopiere aus der Liste der GPG-Schlüssel die lange Form der GPG-Schlüssel-ID, die du verwenden möchtest. In diesem Beispiel lautet die GPG-Schlüssel-ID
3AA5C34371567BD2
:Shell $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <hubot@example.com> ssb 4096R/4BB6D45482678BE3 2016-03-10
$ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <hubot@example.com> ssb 4096R/4BB6D45482678BE3 2016-03-10
-
Um deinen primären GPG-Signaturschlüssel in Git festzulegen, fügst du unten den entsprechenden Text ein, also die ID des primären GPG-Schlüssels, den du verwenden möchtest. In diesem Beispiel lautet die GPG-Schlüssel-ID
3AA5C34371567BD2
:git config --global user.signingkey 3AA5C34371567BD2
Alternativ kannst du beim Festlegen eines Unterschlüssels das
!
-Suffix anfügen. In diesem Beispiel lautet die GPG-Unterschlüssel-ID4BB6D45482678BE3
:git config --global user.signingkey 4BB6D45482678BE3!
-
Optional: Um Git so zu konfigurieren, dass alle Commits standardmäßig signiert werden, gib den folgenden Befehl ein:
git config --global commit.gpgsign true
Weitere Informationen findest du unter Commits signieren.
-
Führe zum Hinzufügen des
.bashrc
GPG-Schlüssels zur Startdatei den folgenden Befehl aus:[ -f ~/.bashrc ] && echo -e '\nexport GPG_TTY=$(tty)' >> ~/.bashrc
Mitteilung über deinen SSH-Schlüssel an Git
Du kannst einen vorhandenen SSH-Schlüssel zum Signieren von Commits und Tags verwenden oder einen neuen Schlüssel speziell zum Signieren generieren. Weitere Informationen findest du unter Generieren eines neuen SSH-Schlüssels und Hinzufügen des Schlüssels zum ssh-agent.
Hinweis: Die SSH-Signaturüberprüfung ist in Git 2.34 oder höher verfügbar. Informationen zum Aktualisieren deiner Version von Git findest du auf der Git-Website.
-
Öffne Terminal .
-
Konfiguriere Git zur Verwendung von SSH zum Signieren von Commits und Tags:
git config --global gpg.format ssh
-
Um deinen SSH-Signaturschlüssel in Git festzulegen, füge den folgenden Text ein und ersetze /PATH/TO/.SSH/KEY.PUB durch den Pfad zu dem öffentlichen Schlüssel, den du verwenden möchtest.
git config --global user.signingkey /PATH/TO/.SSH/KEY.PUB