Code

Make "git checkout" create new branches on demand
authorLinus Torvalds <torvalds@g5.osdl.org>
Tue, 12 Jul 2005 03:44:20 +0000 (20:44 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 12 Jul 2005 03:44:20 +0000 (20:44 -0700)
commit91dcdfd3b5331d955cfb60edf8930f1b5c142905
treea488ae1b2b0b28df33497c6826e8fc8ef625f230
parent714fff2aa8979c5dd169481909a364a860481f0e
Make "git checkout" create new branches on demand

In particular, if we check out something that isn't an old branch, it
now requires a new branch-name to check the thing out into.

So, for example:

git checkout -b my-branch v2.6.12

will create the new branch "my-branch", and start it at v2.6.12, while

git checkout master

will just switch back to the master branch.

Of course, if you want to create a new branch "my-branch" and _not_
check it out, you could have done so with just

git-rev-parse v2.6.12^0 > .git/refs/heads/my-branch

which I think I will codify as "git branch".
git-checkout-script