threads / bug / 43390

[BUG] git shortlog: need a range!

Subject: [BUG] git shortlog: need a range!

## tl;dr

3 messages between Nov 28, 2006 and Nov 29, 2006.

replies: 2people: 3as markdown or json

René Scharfe· Nov 28, 2006, 21:49 UTC · re: Junio C Hamano · lore

[PATCH] shortlog: remove range check

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 <rene.scharfe@lsrfire.ath.cx>
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
Johannes Schindelin· Nov 29, 2006, 09:38 UTC · re: Junio C Hamano · lore

Re: [BUG] git shortlog: need a range!

Hi,
On Tue, 28 Nov 2006, Junio C Hamano wrote:
Show 6 quoted lines
> 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

← back to recent threads