GitHub Commits signieren: Der ultimative GPG-Guide [2025 Easy Guide]
Hier ist ein aktueller und leicht verständlicher Guide für das Jahr 2025, um das begehrte „Verified“-Abzeichen auf GitHub zu erhalten.
Das kleine grüne "Verified"-Label neben deinen Commits auf GitHub sieht nicht nur professionell aus, es ist auch ein wichtiges Sicherheitsmerkmal. Es beweist, dass der Code tatsächlich von dir stammt und nicht von jemandem, der nur deinen Namen und deine E-Mail-Adresse verwendet hat.
In dieser Anleitung richten wir GPG (GNU Privacy Guard) Schritt für Schritt ein.
Schritt 1: GPG installieren
Zuerst benötigst du die GPG-Software auf deinem Computer.
- Windows: Lade Gpg4win herunter und installiere es.
- macOS: Nutze Homebrew:
brew install gnupg - Linux (Ubuntu/Debian):
sudo apt update && sudo apt install gnupg
Schritt 2: Ein GPG-Schlüsselpaar erstellen
Öffne dein Terminal (oder die Git Bash unter Windows) und gib folgenden Befehl ein:
gpg --full-generate-key
Folge den Anweisungen:
- Art des Schlüssels: Wähle
(1) RSA and RSA(Standard). - Schlüssellänge: Gib
4096ein. - Gültigkeitsdauer: Drücke
Enterfür "läuft nie ab" (oder wähle z. B.2yfür zwei Jahre). - Bestätigung: Bestätige mit
y. - Name & E-Mail: Gib deinen Namen und die E-Mail-Adresse an, die du auch bei GitHub verwendest. (Wichtig: Sie muss verifiziert sein!).
- Passphrase: Wähle ein sicheres Passwort. Du wirst es beim Committen brauchen.
Schritt 3: Den öffentlichen Schlüssel exportieren
Jetzt müssen wir GitHub mitteilen, wie dein öffentlicher Schlüssel aussieht.
- Lasse dir deine Schlüssel anzeigen:
gpg --list-secret-keys --keyid-format=LONG - Suche die Zeile, die mit
secbeginnt. Kopiere die ID nach dem Schrägstrich (Beispiel:3AA5C34371567BD2). - Exportiere den Schlüssel mit dieser ID (ersetze
DEINE_IDdurch deine kopierte ID):gpg --armor --export DEINE_ID - Kopiere den gesamten Block, der mit
-----BEGIN PGP PUBLIC KEY BLOCK-----beginnt und mit-----END PGP PUBLIC KEY BLOCK-----endet.
Schritt 4: Den Schlüssel bei GitHub hinterlegen
- Logge dich bei GitHub ein.
- Gehe zu Settings -> SSH and GPG keys.
- Klicke auf New GPG key.
- Gib ihm einen Titel (z.B. "Mein MacBook 2025") und füge den kopierten Block in das Feld ein.
- Speichere mit Add GPG key.
Schritt 5: Git lokal konfigurieren
Dein Computer muss nun wissen, dass er diesen Schlüssel zum Signieren verwenden soll.
- Sage Git, welchen Schlüssel es nutzen soll (nutze wieder deine ID von oben):
git config --global user.signingkey DEINE_ID - Wichtig: Aktiviere das automatische Signieren für alle Projekte:
git config --global commit.gpgsign true
Zusatz-Tipp für macOS/Linux:
Damit Git dich nach dem Passwort fragen kann, füge dies zu deiner .bashrc, .zshrc oder .bash_profile hinzu:
export GPG_TTY=$(tty)
Schritt 6: Testen und das "Verified"-Badge genießen
Erstelle eine Test-Datei in einem deiner Repositories und committe sie:
touch test.txt
git add test.txt
git commit -m "Test: Mein erster signierter Commit"
Wenn du nun nach deinem GPG-Passwort gefragt wirst, hat alles geklappt! Pushe den Commit zu GitHub:
git push
Gehe nun auf GitHub zu deiner Commit-Historie. Neben deinem Commit sollte nun ein stolzes grünes "Verified" stehen.
Fehlerbehebung (Troubleshooting)
- "gpg: signing failed: Inappropriate ioctl for device": Du hast wahrscheinlich den
export GPG_TTY=$(tty)Befehl (Schritt 5) vergessen oder dein Terminal nicht neu gestartet. - Kein "Verified"-Badge trotz grünem Haken? Überprüfe, ob die E-Mail-Adresse in deinem Git-Config (
git config user.email) exakt mit der E-Mail im GPG-Schlüssel und auf GitHub übereinstimmt. - Windows-User: Wenn Git den GPG-Pfad nicht findet, hilft oft:
git config --global gpg.program "C:\Program Files (x86)\GnuPG\bin\gpg.exe"
Glückwunsch! Dein GitHub-Profil ist nun ein Stück sicherer und seriöser.