| '\" t |
| .\" Title: git-new-branch |
| .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] |
| .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> |
| .\" Date: 03/25/2014 |
| .\" Manual: Chromium depot_tools Manual |
| .\" Source: depot_tools 207bff1 |
| .\" Language: English |
| .\" |
| .TH "GIT\-NEW\-BRANCH" "1" "03/25/2014" "depot_tools 207bff1" "Chromium depot_tools Manual" |
| .\" ----------------------------------------------------------------- |
| .\" * Define some portability stuff |
| .\" ----------------------------------------------------------------- |
| .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| .\" http://bugs.debian.org/507673 |
| .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html |
| .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| .ie \n(.g .ds Aq \(aq |
| .el .ds Aq ' |
| .\" ----------------------------------------------------------------- |
| .\" * set default formatting |
| .\" ----------------------------------------------------------------- |
| .\" disable hyphenation |
| .nh |
| .\" disable justification (adjust text to left margin only) |
| .ad l |
| .\" ----------------------------------------------------------------- |
| .\" * MAIN CONTENT STARTS HERE * |
| .\" ----------------------------------------------------------------- |
| .SH "NAME" |
| git-new-branch \- Create a new branch with correct tracking information\&. |
| .SH "SYNOPSIS" |
| .sp |
| .nf |
| \fIgit new\-branch\fR <branch_name> |
| \fIgit new\-branch\fR \-\-upstream_current <branch_name> |
| \fIgit new\-branch\fR \-\-upstream <REF> <branch_name> |
| \fIgit new\-branch\fR \-\-lkgr <branch_name> |
| .fi |
| .sp |
| .SH "DESCRIPTION" |
| .sp |
| Creates a new branch\&. By default the new branch will track the configured upstream for the repo (defaults to \fIorigin/master\fR)\&. If one of the other options is specified, it will track that other ref instead\&. |
| .sp |
| Conceptually, each branch in your repo represents one \fIChange List (CL)\fR\&. If you have many independent CLs (i\&.e\&. the changes in one do not interact with/depend on the changes in another), then you should create them as new branches tracking the default upstream (i\&.e\&. git new\-branch <branch_name>)\&. If you have features which depend on each other, you should create stacked branches using git new\-branch \-\-upstream_current <branch_name>\&. |
| .SH "OPTIONS" |
| .PP |
| \-\-upstream_current |
| .RS 4 |
| Set the tracking (upstream) branch to the currently\-checked\-out branch\&. |
| .RE |
| .PP |
| \-\-uptstream <REF> |
| .RS 4 |
| Set the tracking (upstream) branch to <REF>\&. <REF> may be a local branch, remote branch, or a tag\&. |
| .RE |
| .PP |
| \-\-lkgr |
| .RS 4 |
| Alias for |
| \-\-upstream lkgr\&. |
| .RE |
| .PP |
| <branch_name> |
| .RS 4 |
| The name for the new branch\&. |
| .RE |
| .SH "CONFIGURATION VARIABLES" |
| .SS "depot\-tools\&.upstream" |
| .sp |
| This configures the default \fIupstream\fR for all new branches\&. If it is unset, it defaults to \fIorigin/master\fR\&. This is considered to be the \fIroot\fR branch\&. |
| .SH "EXAMPLE" |
| .sp |
| .if n \{\ |
| .RS 4 |
| .\} |
| .nf |
| \fB$ git map\-branches\fR |
| origin/master |
| cool_feature |
| subfeature |
| frozen_changes * |
| \fB$ git new\-branch independent_cl\fR |
| \fB$ git map\-branches\fR |
| origin/master |
| cool_feature |
| subfeature |
| frozen_changes |
| independent_cl * |
| \fB$ git new\-branch \-\-upstream subfeature nested_cl\fR |
| \fB$ git map\-branches\fR |
| origin/master |
| cool_feature |
| subfeature \fB(1)\fR |
| nested_cl * |
| frozen_changes |
| independent_cl |
| \fB$ git checkout cool_feature\fR |
| \fB$ git new\-branch \-\-upstream_current cl_depends_on_cool_feature\fR |
| \fB$ git map\-branches\fR |
| origin/master |
| cool_feature |
| cl_depends_on_cool_feature * |
| subfeature |
| nested_cl |
| frozen_changes |
| independent_cl |
| .fi |
| .if n \{\ |
| .RE |
| .\} |
| .sp |
| .sp |
| \fB1. \fRNote that both branches are cyan because they are currently the same |
| \fIcommit\fR |
| object\&. See |
| \fB:git-map-branches\fR(1) |
| for more detail\&. |
| .br |
| .SH "SUGGESTED ALIASES" |
| .sp |
| Some common short\-hand aliases\&. Feel free to add these to your \fI~/\&.gitconfig\fR file\&. |
| .sp |
| .if n \{\ |
| .RS 4 |
| .\} |
| .nf |
| [alias] |
| git nb = new\-branch |
| git tb = new\-branch \-\-upstream_current \fB(1)\fR |
| .fi |
| .if n \{\ |
| .RE |
| .\} |
| .sp |
| .sp |
| \fB1. \fRmnemonic: tb \(-> "track branch" |
| .br |
| .SH "SEE ALSO" |
| .sp |
| \fBgit-rebase-update\fR(1), \fBgit-reparent-branch\fR(1), \fBgit-rename-branch\fR(1), \fBgit-upstream-diff\fR(1) |
| .SH "CHROMIUM DEPOT_TOOLS" |
| .sp |
| Part of the chromium \fBdepot_tools\fR(1) suite\&. These tools are meant to assist with the development of chromium and related projects\&. Download the tools from \m[blue]\fBhere\fR\m[]\&\s-2\u[1]\d\s+2\&. |
| .SH "NOTES" |
| .IP " 1." 4 |
| here |
| .RS 4 |
| \%https://chromium.googlesource.com/chromium/tools/depot_tools.git |
| .RE |