# [BUG] git shortlog: need a range!

3 messages from 2006-11-28 to 2006-11-29. Participants: Junio C Hamano, René Scharfe, Johannes Schindelin.
Thread: https://gitlist.dev/t/43390

## Junio C Hamano, 2006-11-28 20:20

Subject: [BUG] git shortlog: need a range!
Message-ID: <7v8xhv2uj1.fsf@assigned-by-dhcp.cox.net>
URL: https://gitlist.dev/e/7v8xhv2uj1.fsf%40assigned-by-dhcp.cox.net

```
I just got this:

        $ git shortlog --since=Oct.20 --until=Nov.20 master
        fatal: Need a range!

Why isn't this a range?

```

## René Scharfe, 2006-11-28 21:49

Subject: [PATCH] shortlog: remove range check
Message-ID: <456CAEDD.7030203@lsrfire.ath.cx>
URL: https://gitlist.dev/e/456CAEDD.7030203%40lsrfire.ath.cx
In-Reply-To: <7v8xhv2uj1.fsf@assigned-by-dhcp.cox.net>

```
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, 2006-11-29 09:38

Subject: Re: [BUG] git shortlog: need a range!
Message-ID: <Pine.LNX.4.63.0611291034340.30004@wbgn013.biozentrum.uni-wuerzburg.de>
URL: https://gitlist.dev/e/Pine.LNX.4.63.0611291034340.30004%40wbgn013.biozentrum.uni-wuerzburg.de
In-Reply-To: <7v8xhv2uj1.fsf@assigned-by-dhcp.cox.net>

```
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

```
