From: Pierre Habouzit Date: Fri, 07 Sep 2007 21:04:33 GMT Subject: Re: [PATCH] HEAD, ORIG_HEAD and FETCH_HEAD are really special. Message-ID: <20070907210433.GD23483@artemis.corp> In-Reply-To: <7vabry43cg.fsf@gitster.siamese.dyndns.org> On Fri, Sep 07, 2007 at 08:39:43PM +0000, Junio C Hamano wrote: > Pierre Habouzit writes: > > > I'd have added though that maybe update-ref should print a warning for > > the references that do not match the restriction Junio added. This could > > be done using the function Junio proposed un update_ref() in refs.c > > I would even suggest making it into an error, even if we do not > error out on the reading side (being liberal when reading but > more strict when creating, that is). > > That confused_ref() needs to be tightened further, by the way. > It is called only when we are considering to tack the user > string immediately below $GIT_DIR/ so the only valid cases are > (1) the string begins with "refs/", or (2) the string is all > uppercase (or underscore), especially without slash. The one in > the proposed patch is not strict enough and does not enforce the > former. I reckon I didn't checked what the function did in detail, just the code layout :) And I agree an error is event better, I just don't have enough knowledge of the scripts that used refs in git for a long time that such a change could break. I mean, I only use git since the 1.2 (maybe even 1.3) series :) I'm always all for refusing dangerous layouts rather than trying too hard to support cumbersome things that are 99% of the times issues :) -- ·O· Pierre Habouzit ··O madcoder@debian.org OOO http://www.madism.org