git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v4 0/5] Signed-commit

From
Junio C Hamano <gitster@pobox.com>
Date
Oct 20, 2011, 00:36 UTC
Message-ID
<1319071023-31919-1-git-send-email-gitster@pobox.com>
In-Reply-To
<1318983645-18897-1-git-send-email-gitster@pobox.com>
The fourth iteration.
 - The first patch refactors where the current code invokes gpg for
   signing and verification of tags;
 - The second patch introduces signed commit objects (unchanged);
 - The third patch teaches "git log/show" to show the signature (adjusted
   to the updated "gpg output capture" API, with colors);
 - The fourth patch refactors helper bits to test GPG related features
   out of existing "tag -s" && "tag --verify" test script (new); and
 - The fifth patch adds tests for "commit [--amend] -S", "merge -S",
   and "show --show-signature" (new).

I think the internal API to drive "gpg" in this iteration is good to go. The verification side has been updated to allow the callers to capture output from GPG in a strbuf, so that they can pretty-print it in a format more suitable in their context, rather than just spewing it out to the standard error stream.

Junio C Hamano (5):
  Split GPG interface into its own helper library
  commit: teach --gpg-sign option
  log: --show-signature
  t7004: extract generic "GPG testing" bits
  test "commit -S" and "log --show-signature"
 Makefile                 |    2 +
 builtin/commit-tree.c    |   24 +++++++-
 builtin/commit.c         |   12 +++-
 builtin/merge.c          |   16 +++++-
 builtin/tag.c            |   76 ++-----------------------
 builtin/verify-tag.c     |   35 ++----------
 commit.c                 |   74 ++++++++++++++++++++++++-
 commit.h                 |    5 +-
 gpg-interface.c          |  138 ++++++++++++++++++++++++++++++++++++++++++++++
 gpg-interface.h          |   10 +++
 log-tree.c               |   39 +++++++++++++
 notes-cache.c            |    2 +-
 notes-merge.c            |    2 +-
 revision.c               |    2 +
 revision.h               |    1 +
 t/lib-gpg.sh             |   29 ++++++++++
 t/lib-gpg/pubring.gpg    |  Bin 0 -> 1164 bytes
 t/lib-gpg/random_seed    |  Bin 0 -> 600 bytes
 t/lib-gpg/secring.gpg    |  Bin 0 -> 1237 bytes
 t/lib-gpg/trustdb.gpg    |  Bin 0 -> 1280 bytes
 t/t7004-tag.sh           |   29 +---------
 t/t7004/pubring.gpg      |  Bin 1164 -> 0 bytes
 t/t7004/random_seed      |  Bin 600 -> 0 bytes
 t/t7004/secring.gpg      |  Bin 1237 -> 0 bytes
 t/t7004/trustdb.gpg      |  Bin 1280 -> 0 bytes
 t/t7510-signed-commit.sh |   60 ++++++++++++++++++++
 tag.c                    |    5 ++
 27 files changed, 422 insertions(+), 139 deletions(-)
 create mode 100644 gpg-interface.c
 create mode 100644 gpg-interface.h
 create mode 100644 t/lib-gpg.sh
 create mode 100644 t/lib-gpg/pubring.gpg
 create mode 100644 t/lib-gpg/random_seed
 create mode 100644 t/lib-gpg/secring.gpg
 create mode 100644 t/lib-gpg/trustdb.gpg
 delete mode 100644 t/t7004/pubring.gpg
 delete mode 100644 t/t7004/random_seed
 delete mode 100644 t/t7004/secring.gpg
 delete mode 100644 t/t7004/trustdb.gpg
 create mode 100755 t/t7510-signed-commit.sh
-- 
1.7.7.498.g3f2e50
Previous: Junio C HamanoNext: Junio C Hamano
Message 26 of 35 in “commit: teach --gpg-sign option”
  1. commit: teach --gpg-sign optionJunio C Hamano, Oct 6, 2011
  2. Shawn PearceOct 6, 2011
  3. Jonathan NiederOct 6, 2011
  4. Matthieu MoyOct 6, 2011
  5. Michael J GruberOct 6, 2011
  6. Junio C HamanoOct 6, 2011
  7. Robin H. JohnsonOct 6, 2011
  8. Michael J GruberOct 7, 2011
  9. Nguyen Thai Ngoc DuyOct 7, 2011
  10. Michael J GruberOct 9, 2011
  11. Robin H. JohnsonOct 9, 2011
  12. Junio C HamanoOct 9, 2011
  13. Robin H. JohnsonOct 11, 2011
  14. Michael J GruberOct 9, 2011
  15. Junio C HamanoOct 9, 2011
  16. Michael J GruberOct 10, 2011
  17. Junio C HamanoOct 10, 2011
  18. Junio C HamanoOct 9, 2011
  19. Michael J GruberOct 10, 2011
  20. Junio C HamanoOct 10, 2011
  21. Michael J GruberOct 11, 2011
  22. 0/3 Signed-commitJunio C Hamano, Oct 19, 2011
  23. 1/3 Split GPG interface into its own helper libraryJunio C Hamano, Oct 19, 2011
  24. 2/3 commit: teach --gpg-sign optionJunio C Hamano, Oct 19, 2011
  25. 3/3 log: --show-signatureJunio C Hamano, Oct 19, 2011
  26. 0/5 Signed-commitJunio C Hamano, Oct 20, 2011
  27. 1/5 Split GPG interface into its own helper libraryJunio C Hamano, Oct 20, 2011
  28. 2/5 commit: teach --gpg-sign optionJunio C Hamano, Oct 20, 2011
  29. 3/5 log: --show-signatureJunio C Hamano, Oct 20, 2011
  30. 4/5 t7004: extract generic "GPG testing" bitsJunio C Hamano, Oct 20, 2011
  31. 5/5 test "commit -S" and "log --show-signature"Junio C Hamano, Oct 20, 2011
  32. 7/5 pretty: %G[?GS] placeholdersJunio C Hamano, Oct 22, 2011
  33. Elia PintoOct 22, 2011
  34. Junio C HamanoOct 22, 2011
  35. Junio C HamanoOct 10, 2011

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.