From: Shawn O. Pearce Date: Sat, 20 Sep 2008 00:26:48 GMT Subject: Re: [EGIT] Checking out signed tags fails Message-ID: <20080920002648.GG13139@spearce.org> In-Reply-To: <2c6b72b30809161148p2b4ce08fh32ff5717ca85e773@mail.gmail.com> Jonas Fonseca wrote: > On Tue, Sep 16, 2008 at 14:58, Jonas Flodén wrote: > > When trying to check-out a signed tag I get the following Error: > > Unable to switch branches > > > > Reason: > > Mapping commit: refs/tags/v1.3.1.1 > > > > And in details: > > Object XXX is not a commit. > > > > The object ID shown is actually the id for the tag object and not the > > tagged commit. > > > > This was tested with the latest master. It seemed commit 1f460e2 (Tests > > and fixes for dereferencing tags in Repository.resolve(), 2008-09-12) > > would fix it, but it didn't. > > The fixes are only for the code path where reference expressions needs > to be resolved. From what I understand, the problem you have > encountered is due to resolve() falling back to using resolveSimple() > which doesn't dereference any tags. Perhaps EGit could postfix ^{} or > ^{commit} to the tag name before calling mapCommit(), or whatever it > uses? Yea, a ^{} is missing somwhere... this is now in the issue tracker. I'm behind and probably won't look at it more this week, but its probably a simple thing in the checkout UI. -- Shawn.