SYNOPSIS

git-branch [(-d | -D) <branchname>] | [[-f] <branchname> [<start-point>]]

DESCRIPTION

If no argument is provided, show available branches and mark current branch with star. Otherwise, create a new branch of name <branchname>.

If a starting point is also specified, that will be where the branch is created, otherwise it will be created at the current HEAD.

OPTIONS

-d

Delete a branch. The branch must be fully merged.

-D

Delete a branch irrespective of its index status.

-f

Force a reset of <branchname> to <start-point> (or current head).

<branchname>

The name of the branch to create or delete.

<start-point>

Where to create the branch; defaults to HEAD. This option has no meaning with -d and -D.

Examples

Start development off of a know tag
$ git clone git://git.kernel.org/pub/scm/.../linux-2.6 my2.6
$ cd my2.6
$ git branch my2.6.14 v2.6.14 (1)
$ git checkout my2.6.14

(1) These two steps are the same as "checkout -b my2.6.14 v2.6.14".
Delete unneeded branch
$ git clone git://git.kernel.org/.../git.git my.git
$ cd my.git
$ git branch -D todo (1)

(1) delete todo branch even if the "master" branch does not have all
commits from todo branch.

Author

Written by Linus Torvalds <torvalds@osdl.org> and Junio C Hamano <junkio@cox.net>

Documentation

Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.

GIT

Part of the git(7) suite