]>
Commit | Line | Data |
---|---|---|
215a7ad1 JH |
1 | git-branch(1) |
2 | ============= | |
7fc9d69f JH |
3 | |
4 | NAME | |
5 | ---- | |
c3f0baac | 6 | git-branch - List, create, or delete branches |
7fc9d69f JH |
7 | |
8 | SYNOPSIS | |
9 | -------- | |
dd181119 | 10 | [verse] |
f3673988 | 11 | 'git-branch' [--color | --no-color] [-r | -a] [-v [--abbrev=<length>]] |
3a4b3f26 | 12 | 'git-branch' [-l] [-f] <branchname> [<start-point>] |
c976d415 | 13 | 'git-branch' (-m | -M) [<oldbranch>] <newbranch> |
7dda22e3 | 14 | 'git-branch' (-d | -D) [-r] <branchname>... |
7fc9d69f JH |
15 | |
16 | DESCRIPTION | |
17 | ----------- | |
bfcc9214 | 18 | With no arguments given a list of existing branches |
2eaf273d | 19 | will be shown, the current branch will be highlighted with an asterisk. |
bfcc9214 AP |
20 | Option `-r` causes the remote-tracking branches to be listed, |
21 | and option `-a` shows both. | |
7fc9d69f | 22 | |
2eaf273d SE |
23 | In its second form, a new branch named <branchname> will be created. |
24 | It will start out with a head equal to the one given as <start-point>. | |
25 | If no <start-point> is given, the branch will be created with a head | |
26 | equal to that of the currently checked out branch. | |
27 | ||
c976d415 LH |
28 | With a '-m' or '-M' option, <oldbranch> will be renamed to <newbranch>. |
29 | If <oldbranch> had a corresponding reflog, it is renamed to match | |
30 | <newbranch>, and a reflog entry is created to remember the branch | |
31 | renaming. If <newbranch> exists, -M must be used to force the rename | |
32 | to happen. | |
33 | ||
2eaf273d | 34 | With a `-d` or `-D` option, `<branchname>` will be deleted. You may |
3a4b3f26 | 35 | specify more than one branch for deletion. If the branch currently |
7dda22e3 QT |
36 | has a ref log then the ref log will also be deleted. Use -r together with -d |
37 | to delete remote-tracking branches. | |
dd181119 JL |
38 | |
39 | ||
7fc9d69f JH |
40 | OPTIONS |
41 | ------- | |
d4072c97 AE |
42 | -d:: |
43 | Delete a branch. The branch must be fully merged. | |
44 | ||
45 | -D:: | |
46 | Delete a branch irrespective of its index status. | |
47 | ||
3a4b3f26 SP |
48 | -l:: |
49 | Create the branch's ref log. This activates recording of | |
50 | all changes to made the branch ref, enabling use of date | |
51 | based sha1 expressions such as "<branchname>@{yesterday}". | |
52 | ||
075dd8ee | 53 | -f:: |
2eaf273d SE |
54 | Force the creation of a new branch even if it means deleting |
55 | a branch that already exists with the same name. | |
56 | ||
c976d415 LH |
57 | -m:: |
58 | Move/rename a branch and the corresponding reflog. | |
59 | ||
60 | -M:: | |
61 | Move/rename a branch even if the new branchname already exists. | |
62 | ||
f3673988 BG |
63 | --color:: |
64 | Color branches to highlight current, local, and remote branches. | |
65 | ||
66 | --no-color:: | |
67 | Turn off branch colors, even when the configuration file gives the | |
68 | default to color output. | |
69 | ||
2eaf273d | 70 | -r:: |
7dda22e3 | 71 | List or delete (if used with -d) the remote-tracking branches. |
bfcc9214 AP |
72 | |
73 | -a:: | |
74 | List both remote-tracking branches and local branches. | |
075dd8ee | 75 | |
75e6e213 | 76 | -v:: |
23bfbb81 | 77 | Show sha1 and commit subject line for each head. |
75e6e213 LH |
78 | |
79 | --abbrev=<length>:: | |
80 | Alter minimum display length for sha1 in output listing, | |
81 | default value is 7. | |
82 | ||
52a22d1e | 83 | <branchname>:: |
d4072c97 | 84 | The name of the branch to create or delete. |
2b1f4247 SP |
85 | The new branch name must pass all checks defined by |
86 | gitlink:git-check-ref-format[1]. Some of these checks | |
87 | may restrict the characters allowed in a branch name. | |
7fc9d69f | 88 | |
075dd8ee | 89 | <start-point>:: |
2eaf273d SE |
90 | The new branch will be created with a HEAD equal to this. It may |
91 | be given as a branch name, a commit-id, or a tag. If this option | |
92 | is omitted, the current branch is assumed. | |
93 | ||
c976d415 LH |
94 | <oldbranch>:: |
95 | The name of an existing branch to rename. | |
96 | ||
97 | <newbranch>:: | |
98 | The new name for an existing branch. The same restrictions as for | |
99 | <branchname> applies. | |
7fc9d69f | 100 | |
1e2ccd3a JH |
101 | |
102 | Examples | |
2eaf273d | 103 | -------- |
1e2ccd3a | 104 | |
dd181119 | 105 | Start development off of a known tag:: |
1e2ccd3a JH |
106 | + |
107 | ------------ | |
108 | $ git clone git://git.kernel.org/pub/scm/.../linux-2.6 my2.6 | |
109 | $ cd my2.6 | |
2eaf273d | 110 | $ git branch my2.6.14 v2.6.14 <1> |
1e2ccd3a | 111 | $ git checkout my2.6.14 |
1e2ccd3a | 112 | ------------ |
2eaf273d SE |
113 | + |
114 | <1> This step and the next one could be combined into a single step with | |
115 | "checkout -b my2.6.14 v2.6.14". | |
1e2ccd3a JH |
116 | |
117 | Delete unneeded branch:: | |
118 | + | |
119 | ------------ | |
120 | $ git clone git://git.kernel.org/.../git.git my.git | |
121 | $ cd my.git | |
7dda22e3 QT |
122 | $ git branch -d -r todo html man <1> |
123 | $ git branch -D test <2> | |
2eaf273d SE |
124 | ------------ |
125 | + | |
7dda22e3 QT |
126 | <1> delete remote-tracking branches "todo", "html", "man" |
127 | <2> delete "test" branch even if the "master" branch does not have all | |
1e2ccd3a | 128 | commits from todo branch. |
2eaf273d SE |
129 | |
130 | ||
131 | Notes | |
132 | ----- | |
133 | ||
134 | If you are creating a branch that you want to immediately checkout, it's | |
135 | easier to use the git checkout command with its `-b` option to create | |
136 | a branch and check it out with a single command. | |
137 | ||
1e2ccd3a | 138 | |
7fc9d69f JH |
139 | Author |
140 | ------ | |
141 | Written by Linus Torvalds <torvalds@osdl.org> and Junio C Hamano <junkio@cox.net> | |
142 | ||
143 | Documentation | |
144 | -------------- | |
145 | Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>. | |
146 | ||
147 | GIT | |
148 | --- | |
a7154e91 | 149 | Part of the gitlink:git[7] suite |
7fc9d69f | 150 |