Re: bug? in checkout with ambiguous refnames
From: Jeff King <hidden>
Date: 2016-06-15 22:50:24
On Wed, Jan 12, 2011 at 10:11:30AM +0100, Uwe Kleine-König wrote:
quoted
quoted
So working copy and cache are at refs/tags/sgu/mxs-amba-uart, HEAD points to refs/heads/sgu/mxs-amba-uartYeah, we generally resolve ambiguities in favor of the tag (and that warning comes from deep within get_sha1_basic). So the real bug here is that it still said "Switched to branch", which is totally wrong.I wonder how I can resolve the ambiguity when calling checkout. (Well apart from changing either branch name or tag name) git checkout refs/heads/sgu/mxs-amba-uart results in a detached HEAD.
You can't disambiguate to the branch without going to a detached HEAD in the current code; it's just broken[1]. With the patch here: http://article.gmane.org/gmane.comp.version-control.git/164986 it will disambiguate to the branch by default, and if you want the tag, you can do: git checkout tags/sgu/mxs-amba-uart -Peff [1]: You can't do it with checkout, that is. You can still hack around it with: branch=refs/heads/sgu/mxs-amba-uart git read-tree -m -u $branch && git symbolic-ref HEAD $branch which is a simplified version of what checkout is doing.