From: Linus Torvalds Date: Tue, 27 Sep 2005 18:04:17 GMT Subject: Re: Cogito: cg-clone doesn't like packed tag objects Message-ID: In-Reply-To: <20050927173445.GC23034@mythryan2.michonline.com> On Tue, 27 Sep 2005, Ryan Anderson wrote: > > $ cat .git/refs/tags/v2.6.13-rc4 > 7eab951de91d95875ba34ec4c599f37e1208db93 > $ git-rev-parse v2.6.13-rc4 > 7eab951de91d95875ba34ec4c599f37e1208db93 > $ git-rev-parse v2.6.13-rc4^0 > 63953523341bcafe5928bf6e99bffd7db94b471e > $ git-rev-parse 63953523341bcafe5928bf6e99bffd7db94b471e^0 > 63953523341bcafe5928bf6e99bffd7db94b471e The point being that if you want to test whether you have the thing the tag _points_ to, you should verify it. And that's where the "--verify" flag comes in: [torvalds@g5 linux]$ git-rev-parse v2.6.11^0 ; echo $? error: Object 5dc01c595e6c6ec9ccda4f6f69c131c0dd945f8c is a tree, not a commit v2.6.11^0 0 and if the object the tag points to didn't exist at _all_ in your object store, you'd have silently gotten [torvalds@g5 linux]$ git-rev-parse v2.6.11^0 ; echo $? v2.6.11^0 0 but if you used "--verify", you'd have at least gotten [torvalds@g5 linux]$ git-rev-parse --verify v2.6.11^0 ; echo $? fatal: Needed a single revision 1 which is what you want, I thought. Linus