From: Junio C Hamano <gits...@pobox.com>
Subject: Re: [PATCH v5 02/14] trailer: process trailers from file and arguments
Date: Mon, 10 Feb 2014 10:14:34 -0800

> Christian Couder <chrisc...@tuxfamily.org> writes:
> 
>> This is what "if_exists" and "if_missing" are all about.
>>
>> Either:
>>
>>      the same key already exists regardless of the value
>>
>> and, in this case, what happens depends on what has been specified using
>> the "if_exists" configuration variable.
>>
>> Or:
>>
>>      the same key DOES NOT already exists regardless of the value
>>
>> and in this case, what happens depends on what has been specified
>> using the "if_missing" configuration variable.
> 
> Hmm, how should things like signed-off-by be handled?  You may want
> to allow many entries with the same key with distinct values, but
> duplicated values may want to be handled differently (currently we
> only avoid to place a duplicate <key, value> consecutively, but keys
> with different semantics (e.g. "fixes-bug: #bugid") may want to say
> "unless the same key with the same value exists, append it at the
> end".

Many entries with the same key but distinct values can be configured
using:

if_exists = add_if_different
if_missing = add

Many entries with the same key but values that can be the same can be
configured using:

if_exists = add
if_missing = add

The place where the trailers are added, if they should be added, can
be selected using either "where = after", the default, or "where =
before".

"where = after" means just after trailers with the same key, or, if
there are no trailers with the same key, after all the existing
trailers.

"where = before" means just before trailers with the same key, or, if
there are no trailers with the same key, before all the existing
trailers.

I think that this is enough to handle most of the usual cases, but we
can add other more complex options later, as I said in the last
message of this thread:

http://thread.gmane.org/gmane.comp.version-control.git/237278/

Thanks,
Christian.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to