Commit e6eedc31 authored by Jon Seymour's avatar Jon Seymour Committed by Junio C Hamano

rev-parse: exit with non-zero status if ref@{n} is not valid.

"The current behaviour of ref@{...} syntax parser is suboptimal:

    $ git rev-parse --verify jch@{99999} && echo true
    warning: Log for 'jch' only has 1368 entries.
    cfb88e9a
    true

It even knows that it is running off the cut-off point; it should just
cause the caller to notice that fact.  I don't think changing it to error
out should cause any harm to existing callers."

With this change:

   $ git rev-parse --verify jch@{99999} || echo false
   fatal: Log for 'jch' only has 1368 entries.
   false

   $ git rev-parse jch@{99999} || echo false
   fatal: Log for 'jch' only has 1368 entries.
   false
Signed-off-by: Jon Seymour's avatarJon Seymour <jon.seymour@gmail.com>
Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
parent 64fdc08d
......@@ -430,10 +430,11 @@ static int get_sha1_basic(const char *str, int len, unsigned char *sha1)
"warning: Log for '%.*s' only goes "
"back to %s.\n", len, str,
show_date(co_time, co_tz, DATE_RFC2822));
else
fprintf(stderr,
"warning: Log for '%.*s' only has "
"%d entries.\n", len, str, co_cnt);
else {
free(real_ref);
die("Log for '%.*s' only has %d entries.",
len, str, co_cnt);
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment