Reputation: 47023
How do I create a new branch in git
to begin work on a new feature?
I want the new branch to be a duplicate of the current branch (ie, the new branch's HEAD should be the same as the current HEAD).
Question differentiation:
Upvotes: 38
Views: 107382
Reputation: 1230
If you say
$ git checkout -b myFeatureBranch anotherBranch
It'll create myFeatureBranch
off of anotherBranch
. But if you say
$ git checkout -b myFeatureBranch
It'll create myFeatureBranch
off of the current branch.
Upvotes: 48
Reputation: 47023
TL;DR:
To create and start work on a new branch called FEATURE
, you do:
git checkout -b FEATURE
Detailed explanation
To create a branch called FEATURE
:
git branch FEATURE
However, this does not change your current branch.
You can then checkout
the newly created branch (which means make to it the branch you're currently working on:
git checkout FEATURE
(You can see the current branch marked with a *
in the output of git branch --list
.)
Generally you want to start working in the branch you have just created, so the shortcut equivalent for both commands is git checkout -b FEATURE
, which creates a new branch, then does checkout
on it.
Upvotes: 52