git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/17] Pulling signed tags
@ 2011-11-09  1:01 Junio C Hamano
  2011-11-09  1:01 ` [PATCH v3 01/17] Split GPG interface into its own helper library Junio C Hamano
                   ` (18 more replies)
  0 siblings, 19 replies; 21+ messages in thread
From: Junio C Hamano @ 2011-11-09  1:01 UTC (permalink / raw)
  To: git

The third iteration of the fourth approach to give more confidence on the
authenticity of history, but the third approach of giving GPG signature to
individual commits is independently useful and has been rebased on top.

Notable differences from the previous round are:

 - The way to handle multi-line header lines in a commit object is
   officially defined --- the second and subsequent lines begin with a
   single SP to indent them. The "mergetag" header and "gpgsig" header are
   now expressed using it;

 - commit_tree() figures out what "mergetag" extra headers to generate by
   inspecting the annotation added to the util field of parent commits as
   before; it uses a new lower level commit_tree_extended() API to record
   the extra headers.

 - "commit --amend" propagates "mergetag" extra header from the original
   (but not "gpgsig" for obvious reasons).


 . Split GPG interface into its own helper library
 . fetch: do not store peeled tag object names in FETCH_HEAD
 . merge: notice local merging of tags and keep it unwrapped
 . fetch: allow "git fetch $there v1.0" to fetch a tag
 . refs DWIMmery: use the same rule for both "git fetch" and others
 . fmt-merge-msg: avoid early returns
 . fmt-merge-msg: package options into a structure
 . fmt-merge-msg: Add contents of merged tag in the merge message
 . merge: make usage of commit->util more extensible
 . merge: record tag objects without peeling in MERGE_HEAD

   Unchanged from the previous round.

 . commit: copy merged signed tags to headers of merge commit

   The way commit_tree() notices that some parents are signed tags and
   copies them to "mergetag" extra header has been reimplemented by using
   the new commit_tree_extended() API.

 . merge: force edit mode when merging a tag object

   Unchanged.

 . commit: teach --amend to carry forward extra headers

   New. This is the reason commit_tree_extended() was introduced. The
   plumbing "git commit-tree" should learn to read list of extra headers
   and record them to its product to help scripts (e.g. "rebase -i"), but
   it is outside the scope of this series for now.

 . commit: teach --gpg-sign option
 . log: --show-signature

   These two use the new multi-line header format, but otherwise
   unchanged.

 . test "commit -S" and "log --show-signature"
 . pretty: %G[?GS] placeholders

   Unchanged.

 Makefile                                           |    2 +
 builtin.h                                          |    8 +-
 builtin/commit-tree.c                              |   24 ++-
 builtin/commit.c                                   |   28 ++-
 builtin/fetch.c                                    |    3 +-
 builtin/fmt-merge-msg.c                            |  113 +++++++--
 builtin/merge.c                                    |  109 +++++----
 builtin/tag.c                                      |   76 +------
 builtin/verify-tag.c                               |   35 +---
 cache.h                                            |    2 +-
 commit.c                                           |  260 +++++++++++++++++++-
 commit.h                                           |   39 +++-
 gpg-interface.c                                    |  138 +++++++++++
 gpg-interface.h                                    |   10 +
 log-tree.c                                         |   39 +++
 merge-recursive.c                                  |   13 +-
 notes-cache.c                                      |    2 +-
 notes-merge.c                                      |    2 +-
 pretty.c                                           |   86 +++++++
 refs.c                                             |    7 -
 revision.c                                         |    2 +
 revision.h                                         |    1 +
 strbuf.c                                           |   14 +
 strbuf.h                                           |    8 +
 t/t4202-log.sh                                     |    4 +-
 t/t5510-fetch.sh                                   |    5 +-
 t/t5515/fetch.br-branches-default                  |    6 +-
 t/t5515/fetch.br-branches-default-merge            |    6 +-
 ...etch.br-branches-default-merge_branches-default |    6 +-
 t/t5515/fetch.br-branches-default-octopus          |    6 +-
 ...ch.br-branches-default-octopus_branches-default |    6 +-
 t/t5515/fetch.br-branches-default_branches-default |    6 +-
 t/t5515/fetch.br-branches-one                      |    6 +-
 t/t5515/fetch.br-branches-one-merge                |    6 +-
 t/t5515/fetch.br-branches-one-merge_branches-one   |    6 +-
 t/t5515/fetch.br-branches-one-octopus              |    6 +-
 t/t5515/fetch.br-branches-one-octopus_branches-one |    6 +-
 t/t5515/fetch.br-branches-one_branches-one         |    6 +-
 t/t5515/fetch.br-config-explicit                   |    6 +-
 t/t5515/fetch.br-config-explicit-merge             |    6 +-
 .../fetch.br-config-explicit-merge_config-explicit |    6 +-
 t/t5515/fetch.br-config-explicit-octopus           |    6 +-
 ...etch.br-config-explicit-octopus_config-explicit |    6 +-
 t/t5515/fetch.br-config-explicit_config-explicit   |    6 +-
 t/t5515/fetch.br-config-glob                       |    6 +-
 t/t5515/fetch.br-config-glob-merge                 |    6 +-
 t/t5515/fetch.br-config-glob-merge_config-glob     |    6 +-
 t/t5515/fetch.br-config-glob-octopus               |    6 +-
 t/t5515/fetch.br-config-glob-octopus_config-glob   |    6 +-
 t/t5515/fetch.br-config-glob_config-glob           |    6 +-
 t/t5515/fetch.br-remote-explicit                   |    6 +-
 t/t5515/fetch.br-remote-explicit-merge             |    6 +-
 .../fetch.br-remote-explicit-merge_remote-explicit |    6 +-
 t/t5515/fetch.br-remote-explicit-octopus           |    6 +-
 ...etch.br-remote-explicit-octopus_remote-explicit |    6 +-
 t/t5515/fetch.br-remote-explicit_remote-explicit   |    6 +-
 t/t5515/fetch.br-remote-glob                       |    6 +-
 t/t5515/fetch.br-remote-glob-merge                 |    6 +-
 t/t5515/fetch.br-remote-glob-merge_remote-glob     |    6 +-
 t/t5515/fetch.br-remote-glob-octopus               |    6 +-
 t/t5515/fetch.br-remote-glob-octopus_remote-glob   |    6 +-
 t/t5515/fetch.br-remote-glob_remote-glob           |    6 +-
 t/t5515/fetch.br-unconfig                          |    6 +-
 t/t5515/fetch.br-unconfig_--tags_.._.git           |    6 +-
 ...nfig_.._.git_one_tag_tag-one_tag_tag-three-file |    6 +-
 ...fig_.._.git_tag_tag-one-tree_tag_tag-three-file |    6 +-
 ...h.br-unconfig_.._.git_tag_tag-one_tag_tag-three |    6 +-
 t/t5515/fetch.br-unconfig_branches-default         |    6 +-
 t/t5515/fetch.br-unconfig_branches-one             |    6 +-
 t/t5515/fetch.br-unconfig_config-explicit          |    6 +-
 t/t5515/fetch.br-unconfig_config-glob              |    6 +-
 t/t5515/fetch.br-unconfig_remote-explicit          |    6 +-
 t/t5515/fetch.br-unconfig_remote-glob              |    6 +-
 t/t5515/fetch.master                               |    6 +-
 t/t5515/fetch.master_--tags_.._.git                |    6 +-
 ...ster_.._.git_one_tag_tag-one_tag_tag-three-file |    6 +-
 ...ter_.._.git_tag_tag-one-tree_tag_tag-three-file |    6 +-
 .../fetch.master_.._.git_tag_tag-one_tag_tag-three |    6 +-
 t/t5515/fetch.master_branches-default              |    6 +-
 t/t5515/fetch.master_branches-one                  |    6 +-
 t/t5515/fetch.master_config-explicit               |    6 +-
 t/t5515/fetch.master_config-glob                   |    6 +-
 t/t5515/fetch.master_remote-explicit               |    6 +-
 t/t5515/fetch.master_remote-glob                   |    6 +-
 t/t7510-signed-commit.sh                           |   71 ++++++
 t/t7600-merge.sh                                   |   12 +-
 t/t7604-merge-custom-message.sh                    |    2 +-
 t/t7608-merge-messages.sh                          |    4 +-
 tag.c                                              |    5 +
 89 files changed, 1080 insertions(+), 392 deletions(-)
 create mode 100644 gpg-interface.c
 create mode 100644 gpg-interface.h
 create mode 100755 t/t7510-signed-commit.sh

-- 
1.7.8.rc1.82.g90e080

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2011-11-09 13:39 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-09  1:01 [PATCH v3 00/17] Pulling signed tags Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 01/17] Split GPG interface into its own helper library Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 02/17] fetch: do not store peeled tag object names in FETCH_HEAD Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 03/17] merge: notice local merging of tags and keep it unwrapped Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 04/17] fetch: allow "git fetch $there v1.0" to fetch a tag Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 05/17] refs DWIMmery: use the same rule for both "git fetch" and others Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 06/17] fmt-merge-msg: avoid early returns Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 07/17] fmt-merge-msg: package options into a structure Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 08/17] fmt-merge-msg: Add contents of merged tag in the merge message Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 09/17] merge: make usage of commit->util more extensible Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 10/17] merge: record tag objects without peeling in MERGE_HEAD Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 11/17] commit: copy merged signed tags to headers of merge commit Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 12/17] merge: force edit mode when merging a tag object Junio C Hamano
2011-11-09  1:01 ` [PATCH v3 13/17] commit: teach --amend to carry forward extra headers Junio C Hamano
2011-11-09  1:02 ` [PATCH v3 14/17] commit: teach --gpg-sign option Junio C Hamano
2011-11-09  1:02 ` [PATCH v3 15/17] log: --show-signature Junio C Hamano
2011-11-09  1:02 ` [PATCH v3 16/17] test "commit -S" and "log --show-signature" Junio C Hamano
2011-11-09  1:02 ` [PATCH v3 17/17] pretty: %G[?GS] placeholders Junio C Hamano
2011-11-09 10:32 ` [PATCH v3 00/17] Pulling signed tags Robin H. Johnson
2011-11-09 13:20 ` [PATCH 18/17] request-pull: use the annotated tag contents Junio C Hamano
2011-11-09 13:39   ` [PATCH 19/17] merge: do not fast-forward when merging a tag Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).