From: Junio C Hamano Date: Thu, 31 Jan 2008 09:37:53 GMT Subject: Re: git-push: forced update of tag shows unabbreviated SHA1 Message-ID: <7vsl0ecp3i.fsf@gitster.siamese.dyndns.org> In-Reply-To: <47A1948F.6080308@viscovery.net> Johannes Sixt writes: > This is just a cosmetical flaw: > ... > To file:///home/jsixt/tmp/foo/B/../A > + 639669ce44f84417f30842c622064827dda01461...475e55f T -> T (forced update) > > Notice that the original SHA1 is not abbreviated. I suspect that is because you do not _have_ the original object, so there is no uniquely usable abbreviation to name the object in your repository. This obviously is not tested at all (not even compile tested), but I think it would show you what is going on. --- builtin-send-pack.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/builtin-send-pack.c b/builtin-send-pack.c index 8afb1d0..9c558ee 100644 --- a/builtin-send-pack.c +++ b/builtin-send-pack.c @@ -265,7 +265,7 @@ static const char *status_abbrev(unsigned char sha1[20]) { const char *abbrev; abbrev = find_unique_abbrev(sha1, DEFAULT_ABBREV); - return abbrev ? abbrev : sha1_to_hex(sha1); + return abbrev ? abbrev : ""; } static void print_ok_ref_status(struct ref *ref)