git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: huebbe <nathanael.huebbe@informatik.uni-hamburg.de>
To: Jeff King <peff@peff.net>, Junio C Hamano <gitster@pobox.com>,
	Stefan Beller <sbeller@google.com>
Cc: stefan.naewe@atlas-elektronik.com, git@vger.kernel.org
Subject: Re: Bug: Incorrect stripping of the [PATCH] prefix in git-am
Date: Wed, 2 Dec 2015 13:38:18 +0100	[thread overview]
Message-ID: <565EE63A.3040006@informatik.uni-hamburg.de> (raw)
In-Reply-To: <20151202005826.GE28197@sigill.intra.peff.net>

[-- Attachment #1: Type: text/plain, Size: 2272 bytes --]

On 12/02/2015 01:58 AM, Jeff King wrote:
> On Wed, Nov 25, 2015 at 04:59:35PM +0100, huebbe wrote:
> 
>> Yes, it looks like the `--keep-non-patch` option works around this.
>>
>> However, shouldn't that be the default behaviour?
>> I mean, what is the point in stripping stuff that is not proven to be inserted by `git` itself?
>> That's not what I expect a tool to do which I trust.
> 
> The "[]" convention is a microformat used by Linux kernel folks. So it's
> not "whoops, we are stripping stuff not added by git". It is respecting
> a microformat used by the tool's authors.
> 
> That being said, if we were choosing a default from scratch today, it
> might go the other way. But we aren't, and we have to deal with the
> burden of breaking existing scripts by flipping it.
> 
> -Peff

Ok, I think I understand the reason for this behavior now.
However, I still believe that the `git format-patch`/`git am` combo
should retain the original commit messages by default.

As such, I would like to ask whether it would be possible/sensible
to somehow escape square brackets, or mark the beginning
of the original commit message in the `git format-patch` output?
This would allow `git am` to reproduce the exact commit message by default
without breaking the "[]" convention.


For example, I could imagine to use this behavior:

  * `git format-patch` produces a message of the format "[PATCH ...]: original commit message".

  * `git am` strips the longest prefix that consists entirely of bracketed stuff
    and ends with the string "]: ". If that terminator is not found -> old behavior.

  * Users could insert any "[FOO]" strings they like before the ":",
    which would still be stripped from the commit message by `git am`.

Of course, any such change would not be without pitfalls. With the rule above,
we would get ": " prepended to commit messages if a patch is created with a `git` version
that has the change, and applied with an older version that does not know about the terminator.


What do you guys think? Is there anything I missed?


Cheers,
Nathanael


-- 
Please be aware that the enemies of your civil rights and your freedom
are on CC of all unencrypted communication. Protect yourself.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

  parent reply	other threads:[~2015-12-02 12:38 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-25 15:29 Bug: Incorrect stripping of the [PATCH] prefix in git-am huebbe
2015-11-25 15:44 ` stefan.naewe
2015-11-25 15:59   ` huebbe
2015-12-02  0:58     ` Jeff King
2015-12-02  1:10       ` Stefan Beller
2015-12-02  2:27         ` Junio C Hamano
2015-12-02  2:24       ` Junio C Hamano
2015-12-02 12:38       ` huebbe [this message]
2015-12-02 15:49         ` Jeff King
2015-12-03 10:32           ` huebbe

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

  List information: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to=565EE63A.3040006@informatik.uni-hamburg.de \
    --to=nathanael.huebbe@informatik.uni-hamburg.de \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=peff@peff.net \
    --cc=sbeller@google.com \
    --cc=stefan.naewe@atlas-elektronik.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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).