[PATCH] shortlog: prompt when reading from terminal by mistake
- From
Junio C Hamano <junkio@cox.net>
- Date
- Mar 8, 2007, 10:12 UTC
- Message-ID
- <7vhcsw9h8p.fsf@assigned-by-dhcp.cox.net>
I was trying to see who have been active recently to find GSoC mentor candidates by running:
$ git shortlog -s -n --since=4.months | head -n 20
After waiting for about 20 seconds, I started getting worried, thinking that the recent revision traversal updates might have had an unintended side effect.
Not so. "git shortlog" acts as a filter when no revs are given, unlike "git log" which defaults to HEAD. It was reading from its standard input.
Signed-off-by: Junio C Hamano <junkio@cox.net> ---
Arguably because --since=4.months clearly states I am expecting it to start digging from somewhere, it would be more sensible to default to HEAD in this case. I suspect it might be as simple as checking argc before we call setup_revisions() and pass "HEAD" as the default parameter to it, but it is getting late here.
builtin-shortlog.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/builtin-shortlog.c b/builtin-shortlog.c index 2d7726e..29343ae 100644 --- a/builtin-shortlog.c +++ b/builtin-shortlog.c @@ -304,8 +304,11 @@ int cmd_shortlog(int argc, const char **argv, const char *prefix) if (!access(".mailmap", R_OK)) read_mailmap(".mailmap"); - if (rev.pending.nr == 0) + if (rev.pending.nr == 0) { + if (isatty(0)) + fprintf(stderr, "(reading log to summarize from standard input)\n"); read_from_stdin(&list); + } else get_from_rev(&rev, &list);