| OLD | NEW |
| 1 '\" t | 1 '\" t |
| 2 .\" Title: git-drover | 2 .\" Title: git-drover |
| 3 .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] | 3 .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] |
| 4 .\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/> | 4 .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> |
| 5 .\" Date: 09/09/2014 | 5 .\" Date: 09/23/2015 |
| 6 .\" Manual: Chromium depot_tools Manual | 6 .\" Manual: Chromium depot_tools Manual |
| 7 .\" Source: depot_tools 6e7202b | 7 .\" Source: depot_tools 4549a59 |
| 8 .\" Language: English | 8 .\" Language: English |
| 9 .\" | 9 .\" |
| 10 .TH "GIT\-DROVER" "1" "09/09/2014" "depot_tools 6e7202b" "Chromium depot_tools M
anual" | 10 .TH "GIT\-DROVER" "1" "09/23/2015" "depot_tools 4549a59" "Chromium depot_tools M
anual" |
| 11 .\" ----------------------------------------------------------------- | 11 .\" ----------------------------------------------------------------- |
| 12 .\" * Define some portability stuff | 12 .\" * Define some portability stuff |
| 13 .\" ----------------------------------------------------------------- | 13 .\" ----------------------------------------------------------------- |
| 14 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | 14 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 15 .\" http://bugs.debian.org/507673 | 15 .\" http://bugs.debian.org/507673 |
| 16 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html | 16 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html |
| 17 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | 17 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 18 .ie \n(.g .ds Aq \(aq | 18 .ie \n(.g .ds Aq \(aq |
| 19 .el .ds Aq ' | 19 .el .ds Aq ' |
| 20 .\" ----------------------------------------------------------------- | 20 .\" ----------------------------------------------------------------- |
| 21 .\" * set default formatting | 21 .\" * set default formatting |
| 22 .\" ----------------------------------------------------------------- | 22 .\" ----------------------------------------------------------------- |
| 23 .\" disable hyphenation | 23 .\" disable hyphenation |
| 24 .nh | 24 .nh |
| 25 .\" disable justification (adjust text to left margin only) | 25 .\" disable justification (adjust text to left margin only) |
| 26 .ad l | 26 .ad l |
| 27 .\" ----------------------------------------------------------------- | 27 .\" ----------------------------------------------------------------- |
| 28 .\" * MAIN CONTENT STARTS HERE * | 28 .\" * MAIN CONTENT STARTS HERE * |
| 29 .\" ----------------------------------------------------------------- | 29 .\" ----------------------------------------------------------------- |
| 30 .SH "NAME" | 30 .SH "NAME" |
| 31 git-drover \- Apply a commit from the trunk to a release branch, or from one rel
ease branch to another\&. | 31 git-drover \- Apply a commit from the trunk to a release branch, or from one rel
ease branch to another\&. |
| 32 .SH "SYNOPSIS" | 32 .SH "SYNOPSIS" |
| 33 .sp | 33 .sp |
| 34 .nf | 34 .nf |
| 35 \fIgit drover\fR | 35 \fIgit drover\fR \-\-branch <branch> \-\-cherry\-pick <commit> |
| 36 [\-\-parent_checkout <path\-to\-existing\-checkout>] |
| 37 [\-\-verbose] [\-\-dry\-run] |
| 36 .fi | 38 .fi |
| 37 .sp | 39 .sp |
| 38 .SH "DESCRIPTION" | 40 .SH "DESCRIPTION" |
| 39 .sp | 41 .sp |
| 40 git drover is NOT IMPLEMENTED yet\&. See the EXAMPLE section for the equivalent
sequence of commands to run\&. | 42 git drover applies a commit to a release branch\&. It creates a new workdir from
an existing checkout to avoid downloading a new checkout without affecting the
existing checkout\&. Creating a workdir requires symlinks so this does not work
on Windows\&. See the EXAMPLE section for the equivalent sequence of commands to
run\&. |
| 43 .sp |
| 44 git drover does not support reverts\&. See the EXAMPLE section for the equivalen
t sequence of commands to run\&. |
| 45 .SH "OPTIONS" |
| 46 .PP |
| 47 \-\-branch <branch> |
| 48 .RS 4 |
| 49 The branch to cherry\-pick the commit to\&. |
| 50 .RE |
| 51 .PP |
| 52 \-\-cherry\-pick <commit> |
| 53 .RS 4 |
| 54 The commit to cherry\-pick\&. |
| 55 .RE |
| 56 .PP |
| 57 \-\-parent_checkout |
| 58 .RS 4 |
| 59 The path to the chromium checkout to use as the source for a creating git\-new\-
workdir workdir to use for cherry\-picking\&. If unspecified, the current direct
ory is used\&. |
| 60 .RE |
| 61 .PP |
| 62 \-v, \-\-verbose |
| 63 .RS 4 |
| 64 Enable verbose logging\&. |
| 65 .RE |
| 66 .PP |
| 67 \-\-dry\-run |
| 68 .RS 4 |
| 69 Skip landing the cherry\-pick\&. Just ensure that the commit can be cherry\-pick
ed into the branch\&. |
| 70 .RE |
| 41 .SH "EXAMPLE" | 71 .SH "EXAMPLE" |
| 42 .SS "PREREQUISITES" | 72 .SS "PREREQUISITES" |
| 43 .sp | 73 .sp |
| 44 Before working with branches, you must \fIgclient sync \-\-with_branch_heads\fR
at least once to fetch the branches\&. | 74 Before working with branches, you must \fIgclient sync \-\-with_branch_heads\fR
at least once to fetch the branches\&. |
| 45 .sp | 75 .sp |
| 46 .it 1 an-trap | 76 .it 1 an-trap |
| 47 .nr an-no-space-flag 1 | 77 .nr an-no-space-flag 1 |
| 48 .nr an-break-flag 1 | 78 .nr an-break-flag 1 |
| 49 .br | 79 .br |
| 50 .ps +1 | 80 .ps +1 |
| 51 \fBMerge Example\fR | 81 \fBMerge Example\fR |
| 52 .RS 4 | 82 .RS 4 |
| 53 .sp | 83 .sp |
| 54 | 84 |
| 55 .sp | 85 .sp |
| 56 .if n \{\ | 86 .if n \{\ |
| 57 .RS 4 | 87 .RS 4 |
| 58 .\} | 88 .\} |
| 59 .nf | 89 .nf |
| 60 # Make sure we have the most up\-to\-date branch sources\&. | |
| 61 \fB$ git fetch\fR | |
| 62 | |
| 63 # Here\*(Aqs a commit (from some\&.committer) that we want to \*(Aqdrover\*(Aq\&
. | 90 # Here\*(Aqs a commit (from some\&.committer) that we want to \*(Aqdrover\*(Aq\&
. |
| 64 \fB$ git log \-n 1 \-\-pretty=fuller\fR | 91 \fB$ git log \-n 1 \-\-pretty=fuller\fR |
| 65 commit 0421d3583f73220c8f88b1a96898fcd81222fe73 | 92 commit b5a049e34297f22a4ea63567b32e3290bb3f244c |
| 66 Author: some\&.committer <some\&.committer@chromium\&.org> | 93 Author: some\&.committer <some\&.committer@chromium\&.org> |
| 67 AuthorDate: Thu Apr 10 08:54:46 2014 +0000 | 94 AuthorDate: Thu Apr 10 08:54:46 2014 +0000 |
| 68 Commit: some\&.committer <some\&.committer@chromium\&.org> | 95 Commit: some\&.committer <some\&.committer@chromium\&.org> |
| 69 CommitDate: Thu Apr 10 08:54:46 2014 +0000 | 96 CommitDate: Thu Apr 10 08:54:46 2014 +0000 |
| 70 | 97 |
| 71 This change needs to go to branch 9999 | 98 This change needs to go to branch 9999 |
| 72 | 99 |
| 73 # Checkout the branch we want to \*(Aqdrover\*(Aq to\&. | |
| 74 \fB$ git checkout \-b drover_9999 branch\-heads/9999\fR | |
| 75 Branch drover_9999 set up to track remote ref refs/branch\-heads/9999\&. | |
| 76 | |
| 77 # Now do the \*(Aqdrover\*(Aq\&. | 100 # Now do the \*(Aqdrover\*(Aq\&. |
| 78 # IMPORTANT!!! Do Not leave off the \*(Aq\-x\*(Aq flag | 101 \fB$ git drover \-\-branch 9999 \-\-cherry\-pick b5a049e34297f22a4ea63567b32e329
0bb3f244c\fR |
| 79 \fB$ git cherry\-pick \-x 0421d3583f73220c8f88b1a96898fcd81222fe73\fR | 102 Going to cherry\-pick |
| 80 [drover_9999 5c0a17d] This change needs to go to branch 9999 | 103 """ |
| 81 Author: some\&.committer <some\&.committer@chromium\&.org> | 104 commit b5a049e34297f22a4ea63567b32e3290bb3f244c |
| 82 Date: Thu Apr 10 08:54:46 2014 +0000 | 105 Author: some\&.committer <some\&.committer@chromium\&.org> |
| 83 1 file changed, 1 insertion(+) | 106 Date: Thu Apr 10 08:54:46 2014 +0000 |
| 84 create mode 100644 modified_file | |
| 85 | |
| 86 # That took the code authored by some\&.committer and committed it to | |
| 87 # the branch by the person who drovered it (i\&.e\&. you)\&. | |
| 88 \fB$ git log \-n 1 \-\-pretty=fuller\fR | |
| 89 commit 5c0a17dd382cd098182ac9f486ccd6b86c28d96e | |
| 90 Author: some\&.committer <some\&.committer@chromium\&.org> | |
| 91 AuthorDate: Thu Apr 10 08:54:46 2014 +0000 | |
| 92 Commit: you <you@chromium\&.org> | |
| 93 CommitDate: Thu Apr 10 09:11:36 2014 +0000 | |
| 94 | 107 |
| 95 This change needs to go to branch 9999 | 108 This change needs to go to branch 9999 |
| 109 """ |
| 110 to 9999\&. Continue (y/n)? y |
| 96 | 111 |
| 97 (cherry picked from commit 0421d3583f73220c8f88b1a96898fcd81222fe73) | 112 # A cl is uploaded to rietveld, where it can be reviewed before landing\&. |
| 98 | 113 |
| 99 # Looks good\&. Ship it! | 114 About to land on 9999\&. Continue (y/n)? y |
| 100 \fB$ git cl upload\fR | 115 # The cherry\-pick cl is landed on the branch 9999\&. |
| 101 # Wait for LGTM or TBR it\&. | |
| 102 \fB$ git cl land\fR | |
| 103 # Or skip the LGTM/TBR and just \*(Aqgit cl land \-\-bypass\-hooks\*(Aq | |
| 104 .fi | 116 .fi |
| 105 .if n \{\ | 117 .if n \{\ |
| 106 .RE | 118 .RE |
| 107 .\} | 119 .\} |
| 108 .sp | 120 .sp |
| 109 .RE | 121 .RE |
| 110 .sp | 122 .sp |
| 111 .it 1 an-trap | 123 .it 1 an-trap |
| 112 .nr an-no-space-flag 1 | 124 .nr an-no-space-flag 1 |
| 113 .nr an-break-flag 1 | 125 .nr an-break-flag 1 |
| (...skipping 10 matching lines...) Expand all Loading... |
| 124 .nf | 136 .nf |
| 125 # Make sure we have the most up\-to\-date branch sources\&. | 137 # Make sure we have the most up\-to\-date branch sources\&. |
| 126 \fB$ git fetch\fR | 138 \fB$ git fetch\fR |
| 127 | 139 |
| 128 # Checkout the branch with the change we want to revert\&. | 140 # Checkout the branch with the change we want to revert\&. |
| 129 \fB$ git checkout \-b drover_9999 branch\-heads/9999\fR | 141 \fB$ git checkout \-b drover_9999 branch\-heads/9999\fR |
| 130 Branch drover_9999 set up to track remote ref refs/branch\-heads/9999\&. | 142 Branch drover_9999 set up to track remote ref refs/branch\-heads/9999\&. |
| 131 | 143 |
| 132 # Here\*(Aqs the commit we want to revert\&. | 144 # Here\*(Aqs the commit we want to revert\&. |
| 133 \fB$ git log \-n 1\fR | 145 \fB$ git log \-n 1\fR |
| 134 commit 28bb44fa7f9d5e19b73a670ae923d3a96dec250a | 146 commit 215689406a8ca5813412becc6258509be903db59 |
| 135 Author: some\&.committer <some\&.committer@chromium\&.org> | 147 Author: some\&.committer <some\&.committer@chromium\&.org> |
| 136 Date: Thu Apr 10 08:54:46 2014 +0000 | 148 Date: Thu Apr 10 08:54:46 2014 +0000 |
| 137 | 149 |
| 138 This change is horribly broken\&. | 150 This change is horribly broken\&. |
| 139 | 151 |
| 140 # Now do the revert\&. | 152 # Now do the revert\&. |
| 141 \fB$ git revert 28bb44fa7f9d5e19b73a670ae923d3a96dec250a\fR | 153 \fB$ git revert 215689406a8ca5813412becc6258509be903db59\fR |
| 142 | 154 |
| 143 # That reverted the change and committed the revert\&. | 155 # That reverted the change and committed the revert\&. |
| 144 \fB$ git log \-n 1\fR | 156 \fB$ git log \-n 1\fR |
| 145 commit 4618467de1407aa159624015c8c8461ec35fbaf1 | 157 commit 1efaf0e8b1c6c6afadfb37e15023b52b960ac2fd |
| 146 Author: you <you@chromium\&.org> | 158 Author: you <you@chromium\&.org> |
| 147 Date: Thu Apr 10 09:11:36 2014 +0000 | 159 Date: Thu Apr 10 09:11:36 2014 +0000 |
| 148 | 160 |
| 149 Revert "This change is horribly broken\&." | 161 Revert "This change is horribly broken\&." |
| 150 | 162 |
| 151 This reverts commit 28bb44fa7f9d5e19b73a670ae923d3a96dec250a\&. | 163 This reverts commit 215689406a8ca5813412becc6258509be903db59\&. |
| 152 | 164 |
| 153 # As with old drover, reverts are generally OK to commit without LGTM\&. | 165 # As with old drover, reverts are generally OK to commit without LGTM\&. |
| 154 \fB$ git cl upload \-r some\&.committer@chromium\&.org \-\-send\-mail\fR | 166 \fB$ git cl upload \-r some\&.committer@chromium\&.org \-\-send\-mail\fR |
| 155 \fB$ git cl land \-\-bypass\-hooks\fR | 167 \fB$ git cl land \-\-bypass\-hooks\fR |
| 156 .fi | 168 .fi |
| 157 .if n \{\ | 169 .if n \{\ |
| 158 .RE | 170 .RE |
| 159 .\} | 171 .\} |
| 160 .sp | 172 .sp |
| 161 .RE | 173 .RE |
| 174 .sp |
| 175 .it 1 an-trap |
| 176 .nr an-no-space-flag 1 |
| 177 .nr an-break-flag 1 |
| 178 .br |
| 179 .ps +1 |
| 180 \fBManual Merge Example\fR |
| 181 .RS 4 |
| 182 .sp |
| 183 |
| 184 .sp |
| 185 .if n \{\ |
| 186 .RS 4 |
| 187 .\} |
| 188 .nf |
| 189 # Make sure we have the most up\-to\-date branch sources\&. |
| 190 \fB$ git fetch\fR |
| 191 |
| 192 # Here\*(Aqs a commit (from some\&.committer) that we want to \*(Aqdrover\*(Aq\&
. |
| 193 \fB$ git log \-n 1 \-\-pretty=fuller\fR |
| 194 commit 640f962733bfd2b9c44539a0d65952643750957e |
| 195 Author: some\&.committer <some\&.committer@chromium\&.org> |
| 196 AuthorDate: Thu Apr 10 08:54:46 2014 +0000 |
| 197 Commit: some\&.committer <some\&.committer@chromium\&.org> |
| 198 CommitDate: Thu Apr 10 08:54:46 2014 +0000 |
| 199 |
| 200 This change needs to go to branch 9999 |
| 201 |
| 202 # Checkout the branch we want to \*(Aqdrover\*(Aq to\&. |
| 203 \fB$ git checkout \-b drover_9999 branch\-heads/9999\fR |
| 204 Branch drover_9999 set up to track remote ref refs/branch\-heads/9999\&. |
| 205 |
| 206 # Now do the \*(Aqdrover\*(Aq\&. |
| 207 # IMPORTANT!!! Do Not leave off the \*(Aq\-x\*(Aq flag |
| 208 \fB$ git cherry\-pick \-x 640f962733bfd2b9c44539a0d65952643750957e\fR |
| 209 [drover_9999 5f1ae97] This change needs to go to branch 9999 |
| 210 Author: some\&.committer <some\&.committer@chromium\&.org> |
| 211 Date: Thu Apr 10 08:54:46 2014 +0000 |
| 212 1 file changed, 1 insertion(+) |
| 213 create mode 100644 modified_file |
| 214 |
| 215 # That took the code authored by some\&.committer and committed it to |
| 216 # the branch by the person who drovered it (i\&.e\&. you)\&. |
| 217 \fB$ git log \-n 1 \-\-pretty=fuller\fR |
| 218 commit 5f1ae978a8d05c16d8ed812163b7aa927f028bf9 |
| 219 Author: some\&.committer <some\&.committer@chromium\&.org> |
| 220 AuthorDate: Thu Apr 10 08:54:46 2014 +0000 |
| 221 Commit: you <you@chromium\&.org> |
| 222 CommitDate: Thu Apr 10 09:11:36 2014 +0000 |
| 223 |
| 224 This change needs to go to branch 9999 |
| 225 |
| 226 (cherry picked from commit 640f962733bfd2b9c44539a0d65952643750957e) |
| 227 |
| 228 # Looks good\&. Ship it! |
| 229 \fB$ git cl upload\fR |
| 230 # Wait for LGTM or TBR it\&. |
| 231 \fB$ git cl land\fR |
| 232 # Or skip the LGTM/TBR and just \*(Aqgit cl land \-\-bypass\-hooks\*(Aq |
| 233 .fi |
| 234 .if n \{\ |
| 235 .RE |
| 236 .\} |
| 237 .sp |
| 238 .RE |
| 162 .SH "SEE ALSO" | 239 .SH "SEE ALSO" |
| 163 .sp | 240 .sp |
| 164 \fBgit-cherry-pick\fR(1), \fBgit-revert\fR(1) | 241 \fBgit-cherry-pick\fR(1), \fBgit-revert\fR(1) |
| 165 .SH "CHROMIUM DEPOT_TOOLS" | 242 .SH "CHROMIUM DEPOT_TOOLS" |
| 166 .sp | 243 .sp |
| 167 Part of the chromium \fBdepot_tools\fR(7) suite\&. These tools are meant to assi
st with the development of chromium and related projects\&. Download the tools f
rom \m[blue]\fBhere\fR\m[]\&\s-2\u[1]\d\s+2\&. | 244 Part of the chromium \fBdepot_tools\fR(7) suite\&. These tools are meant to assi
st with the development of chromium and related projects\&. Download the tools f
rom \m[blue]\fBhere\fR\m[]\&\s-2\u[1]\d\s+2\&. |
| 168 .SH "NOTES" | 245 .SH "NOTES" |
| 169 .IP " 1." 4 | 246 .IP " 1." 4 |
| 170 here | 247 here |
| 171 .RS 4 | 248 .RS 4 |
| 172 \%https://chromium.googlesource.com/chromium/tools/depot_tools.git | 249 \%https://chromium.googlesource.com/chromium/tools/depot_tools.git |
| 173 .RE | 250 .RE |
| OLD | NEW |