]> git.ipfire.org Git - thirdparty/git.git/blame - Documentation/git-branch.txt
git-clone: stop dumb protocol from copying refs outside heads/ and tags/.
[thirdparty/git.git] / Documentation / git-branch.txt
CommitLineData
215a7ad1
JH
1git-branch(1)
2=============
7fc9d69f
JH
3
4NAME
5----
2eaf273d 6git-branch - List, create, or delete branches.
7fc9d69f
JH
7
8SYNOPSIS
9--------
dd181119 10[verse]
bfcc9214 11'git-branch' [-r] [-a]
3a4b3f26 12'git-branch' [-l] [-f] <branchname> [<start-point>]
2eaf273d 13'git-branch' (-d | -D) <branchname>...
7fc9d69f
JH
14
15DESCRIPTION
16-----------
bfcc9214 17With no arguments given a list of existing branches
2eaf273d 18will be shown, the current branch will be highlighted with an asterisk.
bfcc9214
AP
19Option `-r` causes the remote-tracking branches to be listed,
20and option `-a` shows both.
7fc9d69f 21
2eaf273d
SE
22In its second form, a new branch named <branchname> will be created.
23It will start out with a head equal to the one given as <start-point>.
24If no <start-point> is given, the branch will be created with a head
25equal to that of the currently checked out branch.
26
27With a `-d` or `-D` option, `<branchname>` will be deleted. You may
3a4b3f26
SP
28specify more than one branch for deletion. If the branch currently
29has a ref log then the ref log will also be deleted.
dd181119
JL
30
31
7fc9d69f
JH
32OPTIONS
33-------
d4072c97
AE
34-d::
35 Delete a branch. The branch must be fully merged.
36
37-D::
38 Delete a branch irrespective of its index status.
39
3a4b3f26
SP
40-l::
41 Create the branch's ref log. This activates recording of
42 all changes to made the branch ref, enabling use of date
43 based sha1 expressions such as "<branchname>@{yesterday}".
44
075dd8ee 45-f::
2eaf273d
SE
46 Force the creation of a new branch even if it means deleting
47 a branch that already exists with the same name.
48
49-r::
bfcc9214
AP
50 List the remote-tracking branches.
51
52-a::
53 List both remote-tracking branches and local branches.
075dd8ee 54
52a22d1e 55<branchname>::
d4072c97 56 The name of the branch to create or delete.
2b1f4247
SP
57 The new branch name must pass all checks defined by
58 gitlink:git-check-ref-format[1]. Some of these checks
59 may restrict the characters allowed in a branch name.
7fc9d69f 60
075dd8ee 61<start-point>::
2eaf273d
SE
62 The new branch will be created with a HEAD equal to this. It may
63 be given as a branch name, a commit-id, or a tag. If this option
64 is omitted, the current branch is assumed.
65
7fc9d69f 66
1e2ccd3a
JH
67
68Examples
2eaf273d 69--------
1e2ccd3a 70
dd181119 71Start development off of a known tag::
1e2ccd3a
JH
72+
73------------
74$ git clone git://git.kernel.org/pub/scm/.../linux-2.6 my2.6
75$ cd my2.6
2eaf273d 76$ git branch my2.6.14 v2.6.14 <1>
1e2ccd3a 77$ git checkout my2.6.14
1e2ccd3a 78------------
2eaf273d
SE
79+
80<1> This step and the next one could be combined into a single step with
81"checkout -b my2.6.14 v2.6.14".
1e2ccd3a
JH
82
83Delete unneeded branch::
84+
85------------
86$ git clone git://git.kernel.org/.../git.git my.git
87$ cd my.git
2eaf273d
SE
88$ git branch -D todo <1>
89------------
90+
1e2ccd3a
JH
91<1> delete todo branch even if the "master" branch does not have all
92commits from todo branch.
2eaf273d
SE
93
94
95Notes
96-----
97
98If you are creating a branch that you want to immediately checkout, it's
99easier to use the git checkout command with its `-b` option to create
100a branch and check it out with a single command.
101
1e2ccd3a 102
7fc9d69f
JH
103Author
104------
105Written by Linus Torvalds <torvalds@osdl.org> and Junio C Hamano <junkio@cox.net>
106
107Documentation
108--------------
109Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
110
111GIT
112---
a7154e91 113Part of the gitlink:git[7] suite
7fc9d69f 114