From: Junio C Hamano Date: Tue, 15 Nov 2005 18:21:04 GMT Subject: Re: [PATCH] Disable USE_SYMLINK_HEAD by default Message-ID: <7vy83plqlr.fsf@assigned-by-dhcp.cox.net> In-Reply-To: <1132074375.25640.47.camel@dv> Pavel Roskin writes: > On Tue, 2005-11-15 at 13:18 +0100, Petr Baudis wrote: >> >> I'm ambivalent here. I would like to have just a single behaviour here, >> since the symbolic ref otherwise really does not get much testing. But I >> can also understand that we are breaking tools here. >> >> Still, for the reason above, I think we should aim at the symbolic refs >> being the canonical format in the next major release after 1.0, giving >> users time to fix their tools. I can see no advantage in symlinks except >> the backwards compatibility... The voice of reason comes from Pasky; I agree with this. > I planned to write about symrefs long ago, and probably I waited for too > long. I still hope it will be the default for 1.0 release, but if not, > I hope the next release won't be too far away. I think it is a bit too late for that, but please keep that patch; I'll hold on to it too. >> > On the other hand, I think it would be useful to be able to configure the >> > behaviour via .git/config. >> >> Yes, I would very much like to have this. I am in favor of that. Something like this, perhaps: core.filemode = 1 # trustworthy core.usesymlink = 0 # new style > Agreed. By the way, the symref doesn't need to be called HEAD - it > could be "trunk" or "main" or "default-branch". Actually, I was thinking about changing get_sha1_basic() in sha1_name.c so that refs immediately under ${GIT_DIR-.git} are restricted to uppercase only. The other day I did $ git-update-ref linus blah which created .git/linus in addition to .git/refs/heads/linus; this gives you considerable confusion.