Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 1 | git-branch(1) |
| 2 | ============= |
| 3 | |
| 4 | NAME |
| 5 | ---- |
Junio C Hamano | c8d88c2 | 2006-04-29 07:02:01 | [diff] [blame] | 6 | git-branch - List, create, or delete branches. |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 7 | |
| 8 | SYNOPSIS |
| 9 | -------- |
Junio C Hamano | 2b13527 | 2006-03-18 07:45:42 | [diff] [blame] | 10 | [verse] |
Junio C Hamano | c8d88c2 | 2006-04-29 07:02:01 | [diff] [blame] | 11 | 'git-branch' [-r] |
| 12 | 'git-branch' [-f] <branchname> [<start-point>] |
| 13 | 'git-branch' (-d | -D) <branchname>... |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 14 | |
| 15 | DESCRIPTION |
| 16 | ----------- |
Junio C Hamano | c8d88c2 | 2006-04-29 07:02:01 | [diff] [blame] | 17 | With no arguments given (or just `-r`) a list of available branches |
| 18 | will be shown, the current branch will be highlighted with an asterisk. |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 19 | |
Junio C Hamano | c8d88c2 | 2006-04-29 07:02:01 | [diff] [blame] | 20 | In its second form, a new branch named <branchname> will be created. |
| 21 | It will start out with a head equal to the one given as <start-point>. |
| 22 | If no <start-point> is given, the branch will be created with a head |
| 23 | equal to that of the currently checked out branch. |
| 24 | |
| 25 | With a `-d` or `-D` option, `<branchname>` will be deleted. You may |
| 26 | specify more than one branch for deletion. |
Junio C Hamano | 2b13527 | 2006-03-18 07:45:42 | [diff] [blame] | 27 | |
| 28 | |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 29 | OPTIONS |
| 30 | ------- |
| 31 | -d:: |
| 32 | Delete a branch. The branch must be fully merged. |
| 33 | |
| 34 | -D:: |
| 35 | Delete a branch irrespective of its index status. |
| 36 | |
Junio C Hamano | 560a1f6 | 2006-01-30 04:19:57 | [diff] [blame] | 37 | -f:: |
Junio C Hamano | c8d88c2 | 2006-04-29 07:02:01 | [diff] [blame] | 38 | Force the creation of a new branch even if it means deleting |
| 39 | a branch that already exists with the same name. |
| 40 | |
| 41 | -r:: |
| 42 | List only the "remote" branches. |
Junio C Hamano | 560a1f6 | 2006-01-30 04:19:57 | [diff] [blame] | 43 | |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 44 | <branchname>:: |
| 45 | The name of the branch to create or delete. |
Junio C Hamano | b2f5edd | 2006-05-21 10:50:09 | [diff] [blame^] | 46 | The new branch name must pass all checks defined by |
| 47 | gitlink:git-check-ref-format[1]. Some of these checks |
| 48 | may restrict the characters allowed in a branch name. |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 49 | |
Junio C Hamano | 560a1f6 | 2006-01-30 04:19:57 | [diff] [blame] | 50 | <start-point>:: |
Junio C Hamano | c8d88c2 | 2006-04-29 07:02:01 | [diff] [blame] | 51 | The new branch will be created with a HEAD equal to this. It may |
| 52 | be given as a branch name, a commit-id, or a tag. If this option |
| 53 | is omitted, the current branch is assumed. |
| 54 | |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 55 | |
| 56 | |
| 57 | Examples |
Junio C Hamano | c8d88c2 | 2006-04-29 07:02:01 | [diff] [blame] | 58 | -------- |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 59 | |
Junio C Hamano | 2b13527 | 2006-03-18 07:45:42 | [diff] [blame] | 60 | Start development off of a known tag:: |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 61 | + |
| 62 | ------------ |
| 63 | $ git clone git://git.kernel.org/pub/scm/.../linux-2.6 my2.6 |
| 64 | $ cd my2.6 |
Junio C Hamano | c8d88c2 | 2006-04-29 07:02:01 | [diff] [blame] | 65 | $ git branch my2.6.14 v2.6.14 <1> |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 66 | $ git checkout my2.6.14 |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 67 | ------------ |
Junio C Hamano | c8d88c2 | 2006-04-29 07:02:01 | [diff] [blame] | 68 | + |
| 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 Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 71 | |
| 72 | Delete unneeded branch:: |
| 73 | + |
| 74 | ------------ |
| 75 | $ git clone git://git.kernel.org/.../git.git my.git |
| 76 | $ cd my.git |
Junio C Hamano | c8d88c2 | 2006-04-29 07:02:01 | [diff] [blame] | 77 | $ git branch -D todo <1> |
| 78 | ------------ |
| 79 | + |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 80 | <1> delete todo branch even if the "master" branch does not have all |
| 81 | commits from todo branch. |
Junio C Hamano | c8d88c2 | 2006-04-29 07:02:01 | [diff] [blame] | 82 | |
| 83 | |
| 84 | Notes |
| 85 | ----- |
| 86 | |
| 87 | If you are creating a branch that you want to immediately checkout, it's |
| 88 | easier to use the git checkout command with its `-b` option to create |
| 89 | a branch and check it out with a single command. |
| 90 | |
Junio C Hamano | 1a4e841 | 2005-12-27 08:17:23 | [diff] [blame] | 91 | |
| 92 | Author |
| 93 | ------ |
| 94 | Written by Linus Torvalds <torvalds@osdl.org> and Junio C Hamano <junkio@cox.net> |
| 95 | |
| 96 | Documentation |
| 97 | -------------- |
| 98 | Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>. |
| 99 | |
| 100 | GIT |
| 101 | --- |
| 102 | Part of the gitlink:git[7] suite |
| 103 | |