Code

Remove misguided branch disambiguation.
authorJunio C Hamano <junkio@cox.net>
Sat, 17 Dec 2005 07:19:14 +0000 (23:19 -0800)
committerJunio C Hamano <junkio@cox.net>
Sun, 18 Dec 2005 07:10:56 +0000 (23:10 -0800)
commit011fbc7f07fdf82cf922d1eb269bb4dac3e0cc40
tree6941aee58d5c3705f95ee3941e92e4861c4a4596
parent80248b2e4888a05adcb903f53af84ee513d22245
Remove misguided branch disambiguation.

This removes the misguided attempt to refuse processing a branch
name xyzzy and insist it to be given as either heads/xyzzy or
tags/xyzzy when a tag xyzzy exists.  There was no reason to do
so --- the search order was predictable and well defined, so if
the user says xyzzy we should have taken the tag xyzzy in such a
case without complaining.

This incidentally fixes another subtle bug related to this.  If
such a duplicate branch/tag name happened to be a unique valid
prefix of an existing commit object name (say, "beef"), we did
not take the tag "beef" but after complaining used the commit
object whose name started with beef.

Another problem this fixes while introducing some confusion is
that there is no longer a reason to forbid a branch name HEAD
anymore.  In other words, now "git pull . ref1:HEAD" would work
as expected, once we revert "We do not like HEAD branch" patch.
It creates "HEAD" branch under ${GIT_DIR-.git}/refs/heads (or
fast-forwards if already exists) using the tip of ref1 branch
from the current repository, and merges it into the current
branch.

Signed-off-by: Junio C Hamano <junkio@cox.net>
sha1_name.c