GitHub Commits signieren: Der ultimative GPG-Guide [2025 Easy Guide]

Melden

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:

  1. Art des Schlüssels: Wähle (1) RSA and RSA (Standard).
  2. Schlüssellänge: Gib 4096 ein.
  3. Gültigkeitsdauer: Drücke Enter für "läuft nie ab" (oder wähle z. B. 2y für zwei Jahre).
  4. Bestätigung: Bestätige mit y.
  5. Name & E-Mail: Gib deinen Namen und die E-Mail-Adresse an, die du auch bei GitHub verwendest. (Wichtig: Sie muss verifiziert sein!).
  6. 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.

  1. Lasse dir deine Schlüssel anzeigen:
    gpg --list-secret-keys --keyid-format=LONG
  2. Suche die Zeile, die mit sec beginnt. Kopiere die ID nach dem Schrägstrich (Beispiel: 3AA5C34371567BD2).
  3. Exportiere den Schlüssel mit dieser ID (ersetze DEINE_ID durch deine kopierte ID):
    gpg --armor --export DEINE_ID
  4. 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

  1. Logge dich bei GitHub ein.
  2. Gehe zu Settings -> SSH and GPG keys.
  3. Klicke auf New GPG key.
  4. Gib ihm einen Titel (z.B. "Mein MacBook 2025") und füge den kopierten Block in das Feld ein.
  5. Speichere mit Add GPG key.

Schritt 5: Git lokal konfigurieren

Dein Computer muss nun wissen, dass er diesen Schlüssel zum Signieren verwenden soll.

  1. Sage Git, welchen Schlüssel es nutzen soll (nutze wieder deine ID von oben):
    git config --global user.signingkey DEINE_ID
  2. 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.

0