Subject: Re: [RFC] Detached-HEAD reminder on commit?

From: Johan Herland <[email-masked]>
Date: Tue, 02 Sep 2008 23:39:20 +0200

On Tuesday 02 September 2008, Stephan Beyer wrote:
> Junio C Hamano wrote:
> > Pieter de Bie <[email-masked]> writes:
> > > Vienna:git pieter$ ./git commit --allow-empty -m"test"
> > > Created commit 6ce62c8b: test
> > > You are on a detached head, so this commit has not been recorded in a
> > > branch. If you don't want to lose this commit, checkout a branch and
> > > then run: git merge 6ce62c8bfcfb341106f3587d1c141c3955c2544c
> > >
> > > Are there any comments to this / strong opinions against such a
> > > change?
> >
> > Unconditionally doing this is too loud for my taste.  You probably can
> > do this in your post-commit hook.
>
> Well, Pieter probably can do this in his post-commit hook. But I think
> this is useful for usability... especially for beginners who might not
> even know what a hook is. ;)

I'm not sure I like this personally, but if we _really_ don't want newbies 
to shoot themselves in the foot, we could make "git commit" fail on a 
detached HEAD unless the user has indicated that s/he knows what's going 
on; i.e. something like this:

Vienna:git pieter$ ./git commit --allow-empty -m"test"
You are on a detached head, so this commit would not be recorded in a
branch. If you don't want to lose this commit, please switch to a (new) 
branch before committing. If you know what you're doing, and want to
proceed on a detached HEAD, please enable commit.detached in your 
configuration (git config --global commit.detached true)

...but I sympathize with those that think this is overkill.

...Johan

-- 
Johan Herland, <[email-masked]>
www.herland.net