On Tue, Jul 9, 2013 at 12:39 PM, Junio C Hamano <gits...@pobox.com> wrote:
> Eric Sunshine <sunsh...@sunshineco.com> writes:
>> As implemented by this patch, the behavior of git-blame with multiple
>> -L's is consistent with that of git-log with multiple -L's. The
>> implemented behavior feels intuitive to me, but I can see how the
>> behavior you suggest could feel intuitive to others.
>> If I re-do the patch to work the way you describe above, how should we
>> deal with the inconsistent behaviors between the two commands?
> The suggestion to error out was more about "start simple, strict and
> obvious to make it easy to explain" and nothing else. If we start
> with a simple and strict version, we can later loosen it without
> making an input that was valid earlier invalid. If we start with
> too loose, on the other hand, it would be hard to tighten it later.
> But the only two things I care deeply about are, in a file whose
> contents is:
> (1) The range "-L /A/,/B/" finds the first A from the beginning,
> and then chooses B that comes _after_ it, making it equivalent
> to -L3,4 (not -L3,2 or -L2,3).
> (2) In the ranges "-L <anything>,/B/ -L /C/,<anything>", the
> beginning of the second range is found by choosing C that comes
> _after_ the end of the previous range (/B/ may choose either
> the second or the 4th line, and the only C that comes after
> either of them is the 5th line and that is where the second
> range should begin, not at the beginning of the file). The
> same for "-L 1,3 -L /C/" (only C that comes after 3 is eligible
> to be the beginning of the second range).
Thinking aloud: Thus, for "-L 1,5 -L /C/", no C would be found.
> I view it as a nice addition to coalesce two overlapping ranges
> given exactly by numbers, e.g. "-L 100,200 -L 50,102". I do not
> have a strong objection to it, as long as it does not interfere
> negatively with ranges specified by patterns.
Okay, I will base my rewrite upon the above constraints, along with
other observations from your initial response.
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