[BUG] git shortlog: need a range!
From: Junio C Hamano <hidden>
Date: 2016-08-11 19:31:43
I just got this:
$ git shortlog --since=Oct.20 --until=Nov.20 master
fatal: Need a range!
Why isn't this a range?
3 messages, 3 authors, 2016-08-11 · open the first message on its own page
From: Junio C Hamano <hidden>
Date: 2016-08-11 19:31:43
I just got this:
$ git shortlog --since=Oct.20 --until=Nov.20 master
fatal: Need a range!
Why isn't this a range?
From: René Scharfe <hidden>
Date: 2016-08-11 19:48:34
Don't force the user to specify more than one revision parameter, thus making git-shortlog behave more like git-log. 'git-shortlog master' will now produce the expected results; the other end of the range simply is the (oldest) root commit. Signed-off-by: Rene Scharfe <redacted>
diff --git a/builtin-shortlog.c b/builtin-shortlog.c
index b5b13de..f1124e2 100644
--- a/builtin-shortlog.c
+++ b/builtin-shortlog.c@@ -298,9 +298,7 @@ int cmd_shortlog(int argc, const char **argv, const char *prefix) if (!access(".mailmap", R_OK)) read_mailmap(".mailmap"); - if (rev.pending.nr == 1) - die ("Need a range!"); - else if (rev.pending.nr == 0) + if (rev.pending.nr == 0) read_from_stdin(&list); else
From: Johannes Schindelin <hidden>
Date: 2016-08-11 19:58:45
Hi, On Tue, 28 Nov 2006, Junio C Hamano wrote:
I just got this:
$ git shortlog --since=Oct.20 --until=Nov.20 master
fatal: Need a range!
Why isn't this a range?
It really is not. Think about this scenario:
A - B - C
\ /
D
where both B and D were done after Oct.20, but not A. Then you do not have
a range, i.e. you cannot represent the same in the form X..Y.
However, this only shows that my reasoning in shortlog was wrong. It was
meant to prevent accidentally traversing the _whole_ history (which does
take some time), but maybe even this is something people want to do?
Therefore: Ack on René's patch.
Ciao,
Dscho