sha1_name.c: many short names can only be committish
authorJunio C Hamano <gitster@pobox.com>
Mon, 2 Jul 2012 17:00:40 +0000 (10:00 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 9 Jul 2012 23:42:22 +0000 (16:42 -0700)
commite2643617d75e53e5a69278f8d7382553d1c14cf0
treeafbcff536ceab46f29c80d65e56d08df721b3e9c
parente48ba200be908f02a3fb30adcbb8000b7100cb32
sha1_name.c: many short names can only be committish

We know that the token "$name" that appear in "$name^{commit}",
"$name^4", "$name~4" etc. can only name a committish (either a
commit or a tag that peels to a commit).  Teach get_short_sha1() to
take advantage of that knowledge when disambiguating an abbreviated
SHA-1 given as an object name.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
cache.h
sha1_name.c
t/t1512-rev-parse-disambiguation.sh