All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael J Gruber <git@drmicha.warpmail.net>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH] commit: teach --gpg-sign option
Date: Tue, 11 Oct 2011 08:39:48 +0200	[thread overview]
Message-ID: <4E93E4B4.9070901@drmicha.warpmail.net> (raw)
In-Reply-To: <7vaa98okwl.fsf@alter.siamese.dyndns.org>

Junio C Hamano venit, vidit, dixit 10.10.2011 18:45:
> Michael J Gruber <git@drmicha.warpmail.net> writes:
> 
>> What norm? --amend keeps some header fields and discards others. In
>> fact, signing a commit "without changing it" (i.e. keeping tree, parents
>> etc., alias "--amend -C HEAD") should be the normal use case for signing
>> the tip of an existing branch. I mean, I have no problems adding to this:
>>
>> git help fixup
>> `git fixup' is aliased to `commit --amend -C HEAD'
> 
> You are *additionally* saying "-C HEAD" in an non-standard alias. Isn't
> that enough indication that a vanila "--amend" is intended to record the
> commit based on the updated context in which the new commit is made?
> E.g. the authorship of the patch is still the same but committer
> information is updated.

I was more referring to leaving "parent" and "tree" headers in place,
which is a bit of a screwed comparison (because it relies on an
unchanged index).

>> But what is the best default for the workflows that we encourage (commit
>> early, ...)? You answer a pull-request which happens to be a
>> fast-forward, sign the tip and suddenly you've taken over ownership (and
>> changed dates)??? Signing a commit should not do this.
> 
> I personally think a pull that is made in response to a pull-request,
> i.e. the upstream merging from lieutenant, especially when the
> authenticity of the puller matters, is perfectly fine with --no-ff.

Yeah, --no-ff would work. I guess we should find out what our "main
customers" need here, since our own patch-based workflow is irrelevant,
and either approach works with our "single push authority". Seems
--no-ff is an easy solution to multiple sigs.

> Unlike the sign-less "we together made these history and nobody really
> owns the result" (aka "Linus hates --no-ff merge because people do that to
> leave a mark by peeing in the snow, without adding anything of value in
> the history"), the whole purpose of signing a commit in the scenario you
> mentioned is for the puller to leave his mark in the history.

diff --git i/Documentation/merge-options.txt
w/Documentation/merge-options.txt
index b613d4e..74d6a05 100644
--- i/Documentation/merge-options.txt
+++ w/Documentation/merge-options.txt
@@ -7,6 +7,13 @@ With --no-commit perform the merge but pretend the merge
 failed and do not autocommit, to give the user a chance to
 inspect and further tweak the merge result before committing.

+--pee::
+--no-pee::
+       This activates `--commit` and `--no-ff` and passes
+       `--gpg-sign` to `commit`.
++
+Use `--no-pee` if you do not want or need to pee.
+
 --ff::
 --no-ff::
        Do not generate a merge commit if the merge resolved as

:)

Michael

  reply	other threads:[~2011-10-11  6:39 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-06  0:56 [PATCH] commit: teach --gpg-sign option Junio C Hamano
2011-10-06 15:50 ` Shawn Pearce
2011-10-06 17:11   ` Jonathan Nieder
2011-10-06 17:22     ` Matthieu Moy
2011-10-06 18:44       ` Michael J Gruber
2011-10-06 21:29     ` Junio C Hamano
2011-10-06 22:24 ` Robin H. Johnson
2011-10-07  8:40   ` Michael J Gruber
2011-10-07 11:18     ` Nguyen Thai Ngoc Duy
2011-10-09 16:32     ` Michael J Gruber
2011-10-09 22:57     ` Robin H. Johnson
2011-10-09 23:18       ` Junio C Hamano
2011-10-11  0:38         ` Robin H. Johnson
2011-10-09 20:00 ` Michael J Gruber
2011-10-09 21:22   ` Junio C Hamano
2011-10-10  6:33     ` Michael J Gruber
2011-10-10 16:35       ` Junio C Hamano
2011-10-09 22:27   ` Junio C Hamano
2011-10-10  6:33     ` Michael J Gruber
2011-10-10 16:45       ` Junio C Hamano
2011-10-11  6:39         ` Michael J Gruber [this message]
     [not found] ` <CACBZZX6xsnAv4S8zAqi08bcqrghZ8nKdzFP=UNCqZOqrEeLFnA@mail.gmail.com>
2011-10-10  4:58   ` Junio C Hamano
2011-10-19  0:20 ` [PATCH v3 0/3] Signed-commit Junio C Hamano
2011-10-19  0:20   ` [PATCH v3 1/3] Split GPG interface into its own helper library Junio C Hamano
2011-10-19  0:20   ` [PATCH v3 2/3] commit: teach --gpg-sign option Junio C Hamano
2011-10-19  0:20   ` [PATCH v3 3/3] log: --show-signature Junio C Hamano
2011-10-20  0:36   ` [PATCH v4 0/5] Signed-commit Junio C Hamano
2011-10-20  0:36     ` [PATCH v4 1/5] Split GPG interface into its own helper library Junio C Hamano
2011-10-20  0:37     ` [PATCH v4 2/5] commit: teach --gpg-sign option Junio C Hamano
2011-10-20  0:37     ` [PATCH v4 3/5] log: --show-signature Junio C Hamano
2011-10-20  0:37     ` [PATCH v4 4/5] t7004: extract generic "GPG testing" bits Junio C Hamano
2011-10-20  0:37     ` [PATCH v4 5/5] test "commit -S" and "log --show-signature" Junio C Hamano
2011-10-22  5:01     ` [PATCH 7/5] pretty: %G[?GS] placeholders Junio C Hamano
2011-10-22 10:47       ` Elia Pinto
2011-10-22 17:55         ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4E93E4B4.9070901@drmicha.warpmail.net \
    --to=git@drmicha.warpmail.net \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.