Von Gast (nicht überprüft) , 29 April 2026

Der Fall fur SSH-Signierung

GPG ist machtig, aber operativ schmerzhaft. Seit Git 2.34 konnen Sie Commits und Tags mit den SSH-Schlusseln signieren, die Sie bereits zum Pushen verwenden.

Einrichtung

git config --global gpg.format ssh
git config --global user.signingkey ~/.ssh/id_ed25519.pub
git config --global commit.gpgsign true
git config --global tag.gpgsign true

Allowed-Signers-Datei

cat > ~/.config/git/allowed_signers <<EOF
[email protected] ssh-ed25519 AAAA... alice
[email protected]   ssh-ed25519 AAAA... bob
EOF
git config --global gpg.ssh.allowedSignersFile ~/.config/git/allowed_signers

Verifizieren

git log --show-signature
git verify-commit HEAD
git verify-tag v1.0.0

Hardware-gestutzte Schlussel

OpenSSH unterstutzt FIDO/U2F-Schlussel (ssh-keygen -t ed25519-sk).

Widerruf

git config --global gpg.ssh.revocationFile ~/.config/git/revoked_keys

Haufige Fehler

Nicht ubereinstimmende E-Mail zwischen Commit-Autor und allowed-signers-Eintrag.

Gemischte Umgebungen

SSH-signierte und GPG-signierte Commits konnen in einem Repo koexistieren.