Re: [PATCH 1/2] Allow users to require source branch on git-checkout -b.
- From
Junio C Hamano <junkio@cox.net>
- Date
- Dec 7, 2006, 19:48 UTC
- Message-ID
- <7vlkljsd1k.fsf@assigned-by-dhcp.cox.net>
- In-Reply-To
- <20061207100152.GA12966@spearce.org>
"Shawn O. Pearce" <spearce@spearce.org> writes:
Show 7 quoted lines
> I have recently observed a rather large number of users who forget > to specify the base revision when they start a new branch with > git-checkout -b. Many of these users are shocked many hours and > commits later when their prior branch is now also part of the new > branch. Nasty words about Git usually follow the discovery. > > This introduces a new config option: checkout.requireSourceBranch,
I'm not sure about this.
Often after you started to code something while on 'master' you realize that work is not trivial and needs its own branch and then "checkout -b" without having to say 'master' (or HEAD) is very handy.
I think requring an explicit fork-point when you are _not_ on 'master' might be a better behaviour.
In other words, you allow "checkout -b" (and "branch") to default to HEAD only while on the branches marked in your configuration file:
Then:
[branch]
allowbranchbydefault = main
allowbranchbydefault = testcan be used to say "while on 'main' and 'test' branch, 'git checkout -b' and 'git branch' without branch point defaults to the current branch".
You could turn it around and make it a per-branch configuration, like:
[branch "main"]
allowbranchbydefault = true