blob: 0b37e2bfc85706ca6d41c1c9e4fedcdce53a7578 [file] [log] [blame]
Junio C Hamano1a4e8412005-12-27 08:17:231git-branch(1)
2=============
3
4NAME
5----
Junio C Hamanoc8d88c22006-04-29 07:02:016git-branch - List, create, or delete branches.
Junio C Hamano1a4e8412005-12-27 08:17:237
8SYNOPSIS
9--------
Junio C Hamano2b135272006-03-18 07:45:4210[verse]
Junio C Hamanoc8d88c22006-04-29 07:02:0111'git-branch' [-r]
12'git-branch' [-f] <branchname> [<start-point>]
13'git-branch' (-d | -D) <branchname>...
Junio C Hamano1a4e8412005-12-27 08:17:2314
15DESCRIPTION
16-----------
Junio C Hamanoc8d88c22006-04-29 07:02:0117With no arguments given (or just `-r`) a list of available branches
18will be shown, the current branch will be highlighted with an asterisk.
Junio C Hamano1a4e8412005-12-27 08:17:2319
Junio C Hamanoc8d88c22006-04-29 07:02:0120In its second form, a new branch named <branchname> will be created.
21It will start out with a head equal to the one given as <start-point>.
22If no <start-point> is given, the branch will be created with a head
23equal to that of the currently checked out branch.
24
25With a `-d` or `-D` option, `<branchname>` will be deleted. You may
26specify more than one branch for deletion.
Junio C Hamano2b135272006-03-18 07:45:4227
28
Junio C Hamano1a4e8412005-12-27 08:17:2329OPTIONS
30-------
31-d::
32Delete a branch. The branch must be fully merged.
33
34-D::
35Delete a branch irrespective of its index status.
36
Junio C Hamano560a1f62006-01-30 04:19:5737-f::
Junio C Hamanoc8d88c22006-04-29 07:02:0138Force the creation of a new branch even if it means deleting
39a branch that already exists with the same name.
40
41-r::
42List only the "remote" branches.
Junio C Hamano560a1f62006-01-30 04:19:5743
Junio C Hamano1a4e8412005-12-27 08:17:2344<branchname>::
45The name of the branch to create or delete.
Junio C Hamanob2f5edd2006-05-21 10:50:0946The new branch name must pass all checks defined by
47gitlink:git-check-ref-format[1]. Some of these checks
48may restrict the characters allowed in a branch name.
Junio C Hamano1a4e8412005-12-27 08:17:2349
Junio C Hamano560a1f62006-01-30 04:19:5750<start-point>::
Junio C Hamanoc8d88c22006-04-29 07:02:0151The new branch will be created with a HEAD equal to this. It may
52be given as a branch name, a commit-id, or a tag. If this option
53is omitted, the current branch is assumed.
54
Junio C Hamano1a4e8412005-12-27 08:17:2355
56
57Examples
Junio C Hamanoc8d88c22006-04-29 07:02:0158--------
Junio C Hamano1a4e8412005-12-27 08:17:2359
Junio C Hamano2b135272006-03-18 07:45:4260Start development off of a known tag::
Junio C Hamano1a4e8412005-12-27 08:17:2361+
62------------
63$ git clone git://git.kernel.org/pub/scm/.../linux-2.6 my2.6
64$ cd my2.6
Junio C Hamanoc8d88c22006-04-29 07:02:0165$ git branch my2.6.14 v2.6.14 <1>
Junio C Hamano1a4e8412005-12-27 08:17:2366$ git checkout my2.6.14
Junio C Hamano1a4e8412005-12-27 08:17:2367------------
Junio C Hamanoc8d88c22006-04-29 07:02:0168+
69<1> This step and the next one could be combined into a single step with
70"checkout -b my2.6.14 v2.6.14".
Junio C Hamano1a4e8412005-12-27 08:17:2371
72Delete unneeded branch::
73+
74------------
75$ git clone git://git.kernel.org/.../git.git my.git
76$ cd my.git
Junio C Hamanoc8d88c22006-04-29 07:02:0177$ git branch -D todo <1>
78------------
79+
Junio C Hamano1a4e8412005-12-27 08:17:2380<1> delete todo branch even if the "master" branch does not have all
81commits from todo branch.
Junio C Hamanoc8d88c22006-04-29 07:02:0182
83
84Notes
85-----
86
87If you are creating a branch that you want to immediately checkout, it's
88easier to use the git checkout command with its `-b` option to create
89a branch and check it out with a single command.
90
Junio C Hamano1a4e8412005-12-27 08:17:2391
92Author
93------
94Written by Linus Torvalds <torvalds@osdl.org> and Junio C Hamano <junkio@cox.net>
95
96Documentation
97--------------
98Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
99
100GIT
101---
102Part of the gitlink:git[7] suite
103