git config gpg.format ssh(または openpgp、x509)、user.signingkey、commit.gpgsign true を設定し、git log --show-signature または git verify-commit で検証します。SSH による検証には、プリンシパルと鍵を列挙した gpg.ssh.allowedSignersFile が必要です。Git はコミットオブジェクトそのものに署名します。コミットオブジェクトはツリーと親コミットを含むので署名はそれらにも及びますが、後のリベースには及びません。リベースは新しいコミットを作るため、改めて署名する必要があります。
GitHub と GitLab は、署名がコミッターのアカウントに登録された鍵と一致すると Verified バッジを表示します(SSH の署名鍵は認証用の鍵とは別に登録します)。また、ブランチ保護によって署名付きコミットを必須にできます。gitsign は Sigstore を使ってキーレスでコミットに署名します。署名が証明するのはどの鍵で署名したかであって、コードが健全であることではありません。また、プラットフォームは Web UI でのマージを自身の鍵で署名し直します。