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