Skip to content

verify-commit: verify commit signatures

Michael J Gruber git 4 versions In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v4 Latest4 patches 5 repliesIn review
  2. v35 patches 5 repliesSuperseded
  3. v26 patches 20 repliesSuperseded
Earlier versions · 1
VersionPostedPatchesRepliesStatus
v13 patches20 repliesSuperseded

Patches in v4 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/4gpg-interface: provide clear helper for struct signature_checkbuiltin/merge.c gpg-interface.c gpg-interface.h +1 more+15 -60 replies
2/4gpg-interface: provide access to the payloadcommit.c gpg-interface.c gpg-interface.h+4 -00 replies
3/4verify-commit: scriptable commit signature verificationDocumentation/git-verify-commit.txt Makefile builtin.h +3 more+125 -00 replies
4/4t7510: test verify-committ/t7510-signed-commit.sh+19 -12 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v4 yet.

Read the v4 thread

Cover letter [PATCHv4 0/4] verify-commit: verify commit signatures

This is v3 rebased on current next (the %G works by Jeff & Junio).

Open questions:

- Should one of git verify-{commit,tag} learn how to verify mergetags? (Probably no, it differs from both other cases.)

- Should we do this now or go for generic "git verify" right away? That depends on whether signed commits need to be verified by scripts now, or whether mergetags are more important.

For a general command which allows different verification policies, I'm still wondering whether we may need hooks which receive all
the relevant information in the environment. Otherwise we'll have a ton of options such as --match-committer-uid, --verify--AllParentsHaveMergeTags, --verify--All-ParentsAreSignedCommits, --peel-to-commit, --merge-commit-only, ...

I imagine that a generic "git verify" would provide "git verify-{commit,tag}" aliases which call "git verify" with options that reproduce the current (suggested) behavior.

Michael J Gruber (4):
gpg-interface: provide clear helper for struct signature_check
gpg-interface: provide access to the payload
verify-commit: scriptable commit signature verification
t7510: test verify-commit

 Documentation/git-verify-commit.txt | 28 +++++++++++
 Makefile                            |  1 +
 builtin.h                           |  1 +
 builtin/merge.c                     |  5 +-
 builtin/verify-commit.c             | 93 +++++++++++++++++++++++++++++++++++++
 command-list.txt                    |  1 +
 commit.c                            |  1 +
 git.c                               |  1 +
 gpg-interface.c                     | 14 ++++++
 gpg-interface.h                     |  2 +
 pretty.c                            |  3 +-
 t/t7510-signed-commit.sh            | 20 +++++++-
 12 files changed, 163 insertions(+), 7 deletions(-)
 create mode 100644 Documentation/git-verify-commit.txt
 create mode 100644 builtin/verify-commit.c
Signature · 1 line
2.0.1.563.g162087b.dirty