git verify-commit

Untersuchen & Vergleichen

Prüft die GPG-Signatur von Commits


Der Befehl 'git verify-commit' prüft die kryptografische Signatur von Commits, die mit git commit -S erstellt wurden. Er gibt aus, was GPG (oder SSH) meldet: wer signiert hat und ob die Signatur gültig ist. Bei unsignierten oder falsch signierten Commits endet er mit einem Fehler und kann so Deployments und Merges absichern.

Syntax

git verify-commit [-v | --verbose] [--raw] <commit>...
[ ] optional| oder<arg> Platzhalter... wiederholbar--flag Option

Beispiele

Den letzten Commit prüfen

git verify-commit HEAD

Zeigt den Status der Signatur.


Signaturen im Log sehen

git log --show-signature -3

Dieselbe Prüfung für mehrere Commits.

Workflow-Beispiele

1
git config --global user.signingkey <key-id>

Deinen Schlüssel wählen

2
git commit -S -m "Release"

Den Commit signieren

3
git verify-commit HEAD

Prüfen

Fehlerbehebung

gpg: Can't check signature: No public key

Ursache: Dir fehlt der öffentliche Schlüssel des Signierenden

Importiere ihn: gpg --recv-keys <key-id>

Tipps & Stolperfallen

Best Practices

  • ✓Signiere Release-Commits und -Tags; prüfe sie in der CI.

Häufige Fehler

  • ✗Eine Signatur bei Commits erwarten, die ohne -S oder commit.gpgSign=true entstanden.

FAQ

A:

Ja, seit Git 2.34: git config gpg.format ssh.