Re: git blame not respecting --find-copies-harder ?
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jul 31, 2008, 08:35 UTC
- Message-ID
- <7v8wvizc16.fsf@gitster.siamese.dyndns.org>
- In-Reply-To
- <20080731082553.GA19522@sigill.intra.peff.net>
Jeff King <peff@peff.net> writes:
Show 27 quoted lines
> On Thu, Jul 31, 2008 at 12:36:59AM -0700, Junio C Hamano wrote:
>
>> Alas, shortlog does not take --all. Yes, I know
>>
>> git log --since=3.day --all | git shortlog | sort | uniq -c
>>
>> is an obvious workaround, but it is mildly irritating.
>
> Hmm. Could it be as simple as:
>
> diff --git a/revision.c b/revision.c
> index a843c42..eaa5572 100644
> --- a/revision.c
> +++ b/revision.c
> @@ -1002,7 +1002,7 @@ static int handle_revision_opt(struct rev_info *revs, int argc, const char **arg
> !strcmp(arg, "--no-walk") || !strcmp(arg, "--do-walk"))
> {
> unkv[(*unkc)++] = arg;
> - return 0;
> + return 1;
> }
>
> if (!prefixcmp(arg, "--max-count=")) {
>
> That is, handle_revision_opt says "yes we parsed this, and it should be
> gone" even though it still gets stuck in the "unknown" section to be
> parsed by setup_revisions later.Hmm, wouldn't that suggest it needs to return 1 when an option candidate given to diff_opt_parse() turns out not to be a diff option and stuffed back to unkv[] at the end of this function?