OLD | NEW |
1 '\" t | 1 '\" t |
2 .\" Title: depot_tools_tutorial | 2 .\" Title: depot_tools_tutorial |
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.78.1 <http://docbook.sf.net/> | 4 .\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/> |
5 .\" Date: 04/28/2014 | 5 .\" Date: 05/09/2014 |
6 .\" Manual: Chromium depot_tools Manual | 6 .\" Manual: Chromium depot_tools Manual |
7 .\" Source: depot_tools 32af7d9 | 7 .\" Source: depot_tools 54dac93 |
8 .\" Language: English | 8 .\" Language: English |
9 .\" | 9 .\" |
10 .TH "DEPOT_TOOLS_TUTORIAL" "7" "04/28/2014" "depot_tools 32af7d9" "Chromium depo
t_tools Manual" | 10 .TH "DEPOT_TOOLS_TUTORIAL" "7" "05/09/2014" "depot_tools 54dac93" "Chromium depo
t_tools Manual" |
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 .\" ----------------------------------------------------------------- |
(...skipping 13 matching lines...) Expand all Loading... |
34 The Chromium \fBdepot_tools\fR(7) suite contains many git workflow\-enhancing to
ols which are designed to work together to enable anyone to wrangle the Chromium
codebase expertly\&. This tutorial explains how to do development on Chromium u
sing these tools\&. This will cover: | 34 The Chromium \fBdepot_tools\fR(7) suite contains many git workflow\-enhancing to
ols which are designed to work together to enable anyone to wrangle the Chromium
codebase expertly\&. This tutorial explains how to do development on Chromium u
sing these tools\&. This will cover: |
35 .sp | 35 .sp |
36 .RS 4 | 36 .RS 4 |
37 .ie n \{\ | 37 .ie n \{\ |
38 \h'-04'\(bu\h'+03'\c | 38 \h'-04'\(bu\h'+03'\c |
39 .\} | 39 .\} |
40 .el \{\ | 40 .el \{\ |
41 .sp -1 | 41 .sp -1 |
42 .IP \(bu 2.3 | 42 .IP \(bu 2.3 |
43 .\} | 43 .\} |
| 44 |
44 Setting up | 45 Setting up |
45 .RE | 46 .RE |
46 .sp | 47 .sp |
47 .RS 4 | 48 .RS 4 |
48 .ie n \{\ | 49 .ie n \{\ |
49 \h'-04'\(bu\h'+03'\c | 50 \h'-04'\(bu\h'+03'\c |
50 .\} | 51 .\} |
51 .el \{\ | 52 .el \{\ |
52 .sp -1 | 53 .sp -1 |
53 .IP \(bu 2.3 | 54 .IP \(bu 2.3 |
54 .\} | 55 .\} |
| 56 |
55 Getting the code | 57 Getting the code |
56 .RE | 58 .RE |
57 .sp | 59 .sp |
58 .RS 4 | 60 .RS 4 |
59 .ie n \{\ | 61 .ie n \{\ |
60 \h'-04'\(bu\h'+03'\c | 62 \h'-04'\(bu\h'+03'\c |
61 .\} | 63 .\} |
62 .el \{\ | 64 .el \{\ |
63 .sp -1 | 65 .sp -1 |
64 .IP \(bu 2.3 | 66 .IP \(bu 2.3 |
65 .\} | 67 .\} |
| 68 |
66 TL;DR | 69 TL;DR |
67 .RE | 70 .RE |
68 .sp | 71 .sp |
69 .RS 4 | 72 .RS 4 |
70 .ie n \{\ | 73 .ie n \{\ |
71 \h'-04'\(bu\h'+03'\c | 74 \h'-04'\(bu\h'+03'\c |
72 .\} | 75 .\} |
73 .el \{\ | 76 .el \{\ |
74 .sp -1 | 77 .sp -1 |
75 .IP \(bu 2.3 | 78 .IP \(bu 2.3 |
76 .\} | 79 .\} |
| 80 |
77 Creating / Uploading a CL | 81 Creating / Uploading a CL |
78 .RE | 82 .RE |
79 .sp | 83 .sp |
80 .RS 4 | 84 .RS 4 |
81 .ie n \{\ | 85 .ie n \{\ |
82 \h'-04'\(bu\h'+03'\c | 86 \h'-04'\(bu\h'+03'\c |
83 .\} | 87 .\} |
84 .el \{\ | 88 .el \{\ |
85 .sp -1 | 89 .sp -1 |
86 .IP \(bu 2.3 | 90 .IP \(bu 2.3 |
87 .\} | 91 .\} |
| 92 |
88 Updating the code | 93 Updating the code |
89 .RE | 94 .RE |
90 .sp | 95 .sp |
91 .RS 4 | 96 .RS 4 |
92 .ie n \{\ | 97 .ie n \{\ |
93 \h'-04'\(bu\h'+03'\c | 98 \h'-04'\(bu\h'+03'\c |
94 .\} | 99 .\} |
95 .el \{\ | 100 .el \{\ |
96 .sp -1 | 101 .sp -1 |
97 .IP \(bu 2.3 | 102 .IP \(bu 2.3 |
98 .\} | 103 .\} |
| 104 |
99 Managing multiple CLs | 105 Managing multiple CLs |
100 .RE | 106 .RE |
101 .sp | 107 .sp |
102 .RS 4 | 108 .RS 4 |
103 .ie n \{\ | 109 .ie n \{\ |
104 \h'-04'\(bu\h'+03'\c | 110 \h'-04'\(bu\h'+03'\c |
105 .\} | 111 .\} |
106 .el \{\ | 112 .el \{\ |
107 .sp -1 | 113 .sp -1 |
108 .IP \(bu 2.3 | 114 .IP \(bu 2.3 |
109 .\} | 115 .\} |
| 116 |
110 Managing dependent CLs | 117 Managing dependent CLs |
111 .RE | 118 .RE |
112 .sp | 119 .sp |
113 .RS 4 | 120 .RS 4 |
114 .ie n \{\ | 121 .ie n \{\ |
115 \h'-04'\(bu\h'+03'\c | 122 \h'-04'\(bu\h'+03'\c |
116 .\} | 123 .\} |
117 .el \{\ | 124 .el \{\ |
118 .sp -1 | 125 .sp -1 |
119 .IP \(bu 2.3 | 126 .IP \(bu 2.3 |
120 .\} | 127 .\} |
| 128 |
121 Example Walkthrough | 129 Example Walkthrough |
122 .RE | 130 .RE |
123 .sp | 131 .sp |
124 Please refer to the manpages (or \-\-help output) for details about any of the c
ommands mentioned in this tutorial\&. | 132 Please refer to the manpages (or \-\-help output) for details about any of the c
ommands mentioned in this tutorial\&. |
125 .if n \{\ | 133 .if n \{\ |
126 .sp | 134 .sp |
127 .\} | 135 .\} |
128 .RS 4 | 136 .RS 4 |
129 .it 1 an-trap | 137 .it 1 an-trap |
130 .nr an-no-space-flag 1 | 138 .nr an-no-space-flag 1 |
(...skipping 12 matching lines...) Expand all Loading... |
143 This tutorial assumes basic familiarity with git terminology and concepts\&. If
you need to brush up on these, the following are very good resources: | 151 This tutorial assumes basic familiarity with git terminology and concepts\&. If
you need to brush up on these, the following are very good resources: |
144 .sp | 152 .sp |
145 .RS 4 | 153 .RS 4 |
146 .ie n \{\ | 154 .ie n \{\ |
147 \h'-04'\(bu\h'+03'\c | 155 \h'-04'\(bu\h'+03'\c |
148 .\} | 156 .\} |
149 .el \{\ | 157 .el \{\ |
150 .sp -1 | 158 .sp -1 |
151 .IP \(bu 2.3 | 159 .IP \(bu 2.3 |
152 .\} | 160 .\} |
| 161 |
153 \m[blue]\fBThink like (a) Git\fR\m[]\&\s-2\u[1]\d\s+2 | 162 \m[blue]\fBThink like (a) Git\fR\m[]\&\s-2\u[1]\d\s+2 |
154 \- A lighthearted overview of git\&. If you\(cqre sorta\-familiar with git, but
not | 163 \- A lighthearted overview of git\&. If you\(cqre sorta\-familiar with git, but
not |
155 \fIcomfortable\fR | 164 \fIcomfortable\fR |
156 with it, then give this a look\&. | 165 with it, then give this a look\&. |
157 .RE | 166 .RE |
158 .sp | 167 .sp |
159 .RS 4 | 168 .RS 4 |
160 .ie n \{\ | 169 .ie n \{\ |
161 \h'-04'\(bu\h'+03'\c | 170 \h'-04'\(bu\h'+03'\c |
162 .\} | 171 .\} |
163 .el \{\ | 172 .el \{\ |
164 .sp -1 | 173 .sp -1 |
165 .IP \(bu 2.3 | 174 .IP \(bu 2.3 |
166 .\} | 175 .\} |
| 176 |
167 \m[blue]\fBGit Immersion Tutorial\fR\m[]\&\s-2\u[2]\d\s+2 | 177 \m[blue]\fBGit Immersion Tutorial\fR\m[]\&\s-2\u[2]\d\s+2 |
168 \- An in\-depth git tutorial\&. | 178 \- An in\-depth git tutorial\&. |
169 .RE | 179 .RE |
170 .sp | 180 .sp |
171 .RS 4 | 181 .RS 4 |
172 .ie n \{\ | 182 .ie n \{\ |
173 \h'-04'\(bu\h'+03'\c | 183 \h'-04'\(bu\h'+03'\c |
174 .\} | 184 .\} |
175 .el \{\ | 185 .el \{\ |
176 .sp -1 | 186 .sp -1 |
177 .IP \(bu 2.3 | 187 .IP \(bu 2.3 |
178 .\} | 188 .\} |
| 189 |
179 \m[blue]\fBpcottle\(cqs Visual Git Branching\fR\m[]\&\s-2\u[3]\d\s+2 | 190 \m[blue]\fBpcottle\(cqs Visual Git Branching\fR\m[]\&\s-2\u[3]\d\s+2 |
180 \- An excellent interactive/graphical demo on how git handles commits, branches,
and shows the operations git performs on them\&. | 191 \- An excellent interactive/graphical demo on how git handles commits, branches,
and shows the operations git performs on them\&. |
181 .RE | 192 .RE |
182 .sp | 193 .sp |
183 .RS 4 | 194 .RS 4 |
184 .ie n \{\ | 195 .ie n \{\ |
185 \h'-04'\(bu\h'+03'\c | 196 \h'-04'\(bu\h'+03'\c |
186 .\} | 197 .\} |
187 .el \{\ | 198 .el \{\ |
188 .sp -1 | 199 .sp -1 |
189 .IP \(bu 2.3 | 200 .IP \(bu 2.3 |
190 .\} | 201 .\} |
| 202 |
191 \m[blue]\fBPro Git book\fR\m[]\&\s-2\u[4]\d\s+2 | 203 \m[blue]\fBPro Git book\fR\m[]\&\s-2\u[4]\d\s+2 |
192 \- \(lqThe\(rq book for learning git from basics to advanced concepts\&. A bit d
ry, but very through\&. | 204 \- \(lqThe\(rq book for learning git from basics to advanced concepts\&. A bit d
ry, but very through\&. |
193 .RE | 205 .RE |
194 .sp | 206 .sp |
195 If you\(cqve tried these out and are still having some trouble getting started,
there are \fImany\fR other resources online which should help\&. If you\(cqre \f
Ireally\fR \fB\fIreally\fR\fR stuck, then chat up one of the Chromium infrastruc
ture team members for some pointers\&. | 207 If you\(cqve tried these out and are still having some trouble getting started,
there are \fImany\fR other resources online which should help\&. If you\(cqre \f
Ireally\fR \fB\fIreally\fR\fR stuck, then chat up one of the Chromium infrastruc
ture team members for some pointers\&. |
196 .PP | 208 .PP |
197 Litmus Test | 209 Litmus Test |
198 .RS 4 | 210 .RS 4 |
199 If you know what | 211 If you know what |
200 git add, | 212 git add, |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
260 .\} | 272 .\} |
261 .nf | 273 .nf |
262 \fB$\fR # get the code | 274 \fB$\fR # get the code |
263 \fB$\fR # In an empty directory: | 275 \fB$\fR # In an empty directory: |
264 \fB$ fetch {chromium,blink,\&.\&.\&.}\fR | 276 \fB$ fetch {chromium,blink,\&.\&.\&.}\fR |
265 | 277 |
266 \fB$\fR # Update third_party repos and run pre\-compile hooks | 278 \fB$\fR # Update third_party repos and run pre\-compile hooks |
267 \fB$ gclient sync\fR | 279 \fB$ gclient sync\fR |
268 | 280 |
269 \fB$\fR # Make a new change and upload it for review | 281 \fB$\fR # Make a new change and upload it for review |
270 \fB$ git new\-branch branchname\fR | 282 \fB$ git new\-branch <branch_name>\fR |
271 \fB$\fR # repeat: [edit, git add, git commit] | 283 \fB$\fR # repeat: [edit, git add, git commit] |
272 \fB$ git cl upload\fR | 284 \fB$ git cl upload\fR |
273 | 285 |
274 \fB$\fR # After change is reviewed, commit with the CQ | 286 \fB$\fR # After change is reviewed, commit with the CQ |
275 \fB$ git cl set_commit\fR | 287 \fB$ git cl set_commit\fR |
276 \fB$\fR # Note that the committed hash which lands will /not/ match the | 288 \fB$\fR # Note that the committed hash which lands will /not/ match the |
277 \fB$\fR # commit hashes of your local branch\&. | 289 \fB$\fR # commit hashes of your local branch\&. |
278 .fi | 290 .fi |
279 .if n \{\ | 291 .if n \{\ |
280 .RE | 292 .RE |
(...skipping 24 matching lines...) Expand all Loading... |
305 .\} | 317 .\} |
306 .nf | 318 .nf |
307 \fB\&.gclient\fR # A configuration file for you source checkout | 319 \fB\&.gclient\fR # A configuration file for you source checkout |
308 \fBsrc/\fR # Top\-level Chromium source checkout\&. | 320 \fBsrc/\fR # Top\-level Chromium source checkout\&. |
309 .fi | 321 .fi |
310 .if n \{\ | 322 .if n \{\ |
311 .RE | 323 .RE |
312 .\} | 324 .\} |
313 .sp | 325 .sp |
314 .sp | 326 .sp |
315 If you are on linux, then you\(cqll need to run: | 327 If you are on linux and fetching the code for the first time, then you\(cqll nee
d to run: |
316 .sp | 328 .sp |
317 .if n \{\ | 329 .if n \{\ |
318 .RS 4 | 330 .RS 4 |
319 .\} | 331 .\} |
320 .nf | 332 .nf |
321 \fB$ cd src && \&./build/install\-build\-deps\&.sh\fR | 333 \fB$ cd src && \&./build/install\-build\-deps\&.sh\fR |
322 .fi | 334 .fi |
323 .if n \{\ | 335 .if n \{\ |
324 .RE | 336 .RE |
325 .\} | 337 .\} |
326 .sp | 338 .sp |
327 .sp | 339 .sp |
328 And finally: | 340 And finally: |
329 .sp | 341 .sp |
330 .if n \{\ | 342 .if n \{\ |
331 .RS 4 | 343 .RS 4 |
332 .\} | 344 .\} |
333 .nf | 345 .nf |
334 \fB$ gclient sync\fR | 346 \fB$ gclient sync\fR |
335 .fi | 347 .fi |
336 .if n \{\ | 348 .if n \{\ |
337 .RE | 349 .RE |
338 .\} | 350 .\} |
339 .sp | 351 .sp |
340 .sp | 352 .sp |
341 This will pull all dependencies of the Chromium src checkout\&. You will need to
run this any time you update the main src checkout\&. | 353 This will pull all dependencies of the Chromium src checkout\&. You will need to
run this any time you update the main src checkout, including when you switch b
ranches\&. |
342 .SH "CREATING / UPLOADING A CL" | 354 .SH "CREATING / UPLOADING A CL" |
343 .if n \{\ | 355 .if n \{\ |
344 .sp | 356 .sp |
345 .\} | 357 .\} |
346 .RS 4 | 358 .RS 4 |
347 .it 1 an-trap | 359 .it 1 an-trap |
348 .nr an-no-space-flag 1 | 360 .nr an-no-space-flag 1 |
349 .nr an-break-flag 1 | 361 .nr an-break-flag 1 |
350 .br | 362 .br |
351 .ps +1 | 363 .ps +1 |
352 \fBNote\fR | 364 \fBNote\fR |
353 .ps -1 | 365 .ps -1 |
354 .br | 366 .br |
355 .sp | 367 .sp |
356 The remainder of the tutorial assumes that your current working directory is the
src/ folder mentioned in Getting the code\&. | 368 The remainder of the tutorial assumes that your current working directory is the
src/ folder mentioned in Getting the code\&. |
357 .sp .5v | 369 .sp .5v |
358 .RE | 370 .RE |
359 .sp | 371 .sp |
360 Each CL corresponds exactly with a single branch in git\&. Any time you want to
begin a new CL, just: | 372 Each CL corresponds exactly with a single branch in git\&. Any time you want to
begin a new CL: |
361 .sp | 373 .sp |
362 .if n \{\ | 374 .if n \{\ |
363 .RS 4 | 375 .RS 4 |
364 .\} | 376 .\} |
365 .nf | 377 .nf |
366 \fB$ git new\-branch <branch_name>\fR | 378 \fB$ git new\-branch <branch_name>\fR |
367 .fi | 379 .fi |
368 .if n \{\ | 380 .if n \{\ |
369 .RE | 381 .RE |
370 .\} | 382 .\} |
371 .sp | 383 .sp |
372 .sp | 384 .sp |
373 This will create and checkout a new branch named branch_name which will track th
e default upstream (which is origin/master)\&. See \fBgit-new-branch\fR(1) for m
ore features, such as the ability to track \fILKGR\fR\&. | 385 This will create and checkout a new branch named branch_name which will track th
e default upstream branch (origin/master)\&. See \fBgit-new-branch\fR(1) for mor
e features\&. |
374 .sp | 386 .sp |
375 Commit as many changes as you like to this branch\&. When you want to upload it
for review, run: | 387 Commit as many changes as you like to this branch\&. When you want to upload it
for review, run: |
376 .sp | 388 .sp |
377 .if n \{\ | 389 .if n \{\ |
378 .RS 4 | 390 .RS 4 |
379 .\} | 391 .\} |
380 .nf | 392 .nf |
381 \fB$ git cl upload\fR | 393 \fB$ git cl upload\fR |
382 .fi | 394 .fi |
383 .if n \{\ | 395 .if n \{\ |
384 .RE | 396 .RE |
385 .\} | 397 .\} |
386 .sp | 398 .sp |
387 .sp | 399 .sp |
388 This will take the diff of your branch against its upstream (origin/master), and
will post it to the \m[blue]\fBChromium code review site\fR\m[]\&\s-2\u[5]\d\s+
2\&. | 400 This will take the diff of your branch against its upstream branch (in that case
origin/master), and will post it to the \m[blue]\fBChromium code review site\fR
\m[]\&\s-2\u[5]\d\s+2\&. |
389 .SH "UPDATING THE CODE" | 401 .SH "UPDATING THE CODE" |
390 .sp | 402 .sp |
391 Inevitably, you\(cqll want to pull in changes from the main Chromium repo\&. Thi
s is pretty easy with \fIdepot_tools\fR: | 403 Inevitably, you\(cqll want to pull in changes from the main Chromium repo\&. Thi
s is pretty easy with \fIdepot_tools\fR: |
392 .sp | 404 .sp |
393 .if n \{\ | 405 .if n \{\ |
394 .RS 4 | 406 .RS 4 |
395 .\} | 407 .\} |
396 .nf | 408 .nf |
397 \fB$ git rebase\-update\fR | 409 \fB$ git rebase\-update\fR |
398 .fi | 410 .fi |
(...skipping 20 matching lines...) Expand all Loading... |
419 .ps +1 | 431 .ps +1 |
420 \fBNote\fR | 432 \fBNote\fR |
421 .ps -1 | 433 .ps -1 |
422 .br | 434 .br |
423 .sp | 435 .sp |
424 Running git rebase\-update will update all your branches, but it will not automa
tically run gclient sync to update your dependencies\&. | 436 Running git rebase\-update will update all your branches, but it will not automa
tically run gclient sync to update your dependencies\&. |
425 .sp .5v | 437 .sp .5v |
426 .RE | 438 .RE |
427 .SH "MANAGING MULTIPLE CLS" | 439 .SH "MANAGING MULTIPLE CLS" |
428 .sp | 440 .sp |
429 Sometimes you want to work on more than one CL at once (say, you have a CL poste
d for review and want to work on something else)\&. For each CL that you want to
work on, just use git new\-branch <branchname>\&. | 441 Sometimes you want to work on more than one CL at once (say, you have a CL poste
d for review and want to work on something else)\&. For each CL that you want to
work on, just use git new\-branch <branch_name>\&. |
430 .sp | 442 .sp |
431 Once you start to have more than one CL at a time, it can be easy to lose your b
earings\&. Fortunately, \fIdepot_tools\fR has two tools to help you out: | 443 Once you start to have more than one CL at a time, it can be easy to lose your b
earings\&. Fortunately, \fIdepot_tools\fR has two tools to help you out: |
432 .sp | 444 .sp |
433 .if n \{\ | 445 .if n \{\ |
434 .RS 4 | 446 .RS 4 |
435 .\} | 447 .\} |
436 .nf | 448 .nf |
437 \fB$ git map\fR | 449 \fB$ git map\fR |
438 *\:\fB 7dcfe47 \fR (\:\fBfrozen_changes\fR\:) 2014\-03\-12 ~ FREEZE\&.unin
dexed | 450 *\:\fB 7dcfe47 \fR (\:\fBfrozen_changes\fR\:) 2014\-03\-12 ~ FREEZE\&.unin
dexed |
439 * \fB4b0c180\fR 2014\-03\-12 ~ modfile | 451 * \fB4b0c180\fR 2014\-03\-12 ~ modfile |
(...skipping 26 matching lines...) Expand all Loading... |
466 origin/master | 478 origin/master |
467 cool_feature | 479 cool_feature |
468 subfeature | 480 subfeature |
469 frozen_changes * | 481 frozen_changes * |
470 master | 482 master |
471 .fi | 483 .fi |
472 .if n \{\ | 484 .if n \{\ |
473 .RE | 485 .RE |
474 .\} | 486 .\} |
475 .sp | 487 .sp |
476 | |
477 .PP | 488 .PP |
478 \fBgit-map\fR(1) | 489 \fBgit-map\fR(1) |
479 .RS 4 | 490 .RS 4 |
480 This tool shows you the history of all of your branches in a pseudo\-graphical f
ormat\&. In particular, it will show you which commits all of your branches are
on, which commit you currently have checked out, and more\&. Check out the doc f
or the full details\&. | 491 This tool shows you the history of all of your branches in a pseudo\-graphical f
ormat\&. In particular, it will show you which commits all of your branches are
on, which commit you currently have checked out, and more\&. Check out the doc f
or the full details\&. |
481 .RE | 492 .RE |
482 .PP | 493 .PP |
483 \fBgit-map-branches\fR(1) | 494 \fBgit-map-branches\fR(1) |
484 .RS 4 | 495 .RS 4 |
485 This tool just shows you which branches you have in your repo, and thier upstrea
m relationship to each other (as well as which branch you have checked out at th
e moment)\&. | 496 This tool just shows you which branches you have in your repo, and their upstrea
m relationship to each other (as well as which branch you have checked out at th
e moment)\&. |
486 .RE | 497 .RE |
487 .sp | 498 .sp |
488 Additionally, sometimes you need to switch between branches, but you\(cqve got w
ork in progress\&. You could use \fBgit-stash\fR(1), but that can be tricky to m
anage because you need to remember which branches you stashed what changes on\&.
Helpfully \fIdepot_tools\fR includes two tools which can greatly assist in case
: | 499 Additionally, sometimes you need to switch between branches, but you\(cqve got w
ork in progress\&. You could use \fBgit-stash\fR(1), but that can be tricky to m
anage because you need to remember which branches you stashed what changes on\&.
Helpfully \fIdepot_tools\fR includes two tools which can greatly assist in case
: |
489 .sp | 500 .sp |
490 \fBgit-freeze\fR(1) allows you to put the current branch in \*(Aqsuspended anima
tion\*(Aq by committing your changes to a specially\-named commit on the top of
your current branch\&. When you come back to your branch later, you can just run
\fBgit-thaw\fR(1) to get your work\-in\-progress changes back to what they were
\&. | 501 \fBgit-freeze\fR(1) allows you to put the current branch in \*(Aqsuspended anima
tion\*(Aq by committing your changes to a specially\-named commit on the top of
your current branch\&. When you come back to your branch later, you can just run
\fBgit-thaw\fR(1) to get your work\-in\-progress changes back to what they were
\&. |
491 .sp | 502 .sp |
492 Another useful tool is \fBgit-rename-branch\fR(1)\&. Unlike git branch \-m <old>
<new>, this tool will correctly preserve the upstream relationships of your bra
nch compared to its downstreams\&. | 503 Another useful tool is \fBgit-rename-branch\fR(1)\&. Unlike git branch \-m <old>
<new>, this tool will correctly preserve the upstream relationships of your bra
nch compared to its downstreams\&. |
493 .sp | 504 .sp |
494 Finally, take a look at \fBgit-upstream-diff\fR(1)\&. This will show you the com
bined diff for all the commits on your branch against the upstream tracking bran
ch\&. This is \fIexactly\fR what git cl upload will push up to code review\&. Ad
ditionally, consider trying the \-\-wordwise argument to get a colorized per\-wo
rd diff (instead of a per\-line diff)\&. | 505 Finally, take a look at \fBgit-upstream-diff\fR(1)\&. This will show you the com
bined diff for all the commits on your branch against the upstream tracking bran
ch\&. This is \fIexactly\fR what git cl upload will push up to code review\&. Ad
ditionally, consider trying the \-\-wordwise argument to get a colorized per\-wo
rd diff (instead of a per\-line diff)\&. |
495 .SH "MANAGING DEPENDENT CLS" | 506 .SH "MANAGING DEPENDENT CLS" |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
560 .sp | 571 .sp |
561 Let\*(Aqs fix something! | 572 Let\*(Aqs fix something! |
562 .sp | 573 .sp |
563 .if n \{\ | 574 .if n \{\ |
564 .RS 4 | 575 .RS 4 |
565 .\} | 576 .\} |
566 .nf | 577 .nf |
567 \fB$ git new\-branch fix_typo\fR | 578 \fB$ git new\-branch fix_typo\fR |
568 \fB$ echo \-e \*(Aq/Banana\ens/Banana/Kuun\enwq\*(Aq | ed build/whitespace_file\
&.txt\fR | 579 \fB$ echo \-e \*(Aq/Banana\ens/Banana/Kuun\enwq\*(Aq | ed build/whitespace_file\
&.txt\fR |
569 1503 | 580 1503 |
| 581 1501 |
570 It was a Domo\-Banana\&. | 582 It was a Domo\-Banana\&. |
571 It was a Domo\-Kuun\&. | 583 It was a Domo\-Kuun\&. |
572 1501 | |
573 \fB$ git commit \-am \*(AqFix terrible typo\&.\*(Aq\fR | 584 \fB$ git commit \-am \*(AqFix terrible typo\&.\*(Aq\fR |
574 [fix_typo 615ffa7] Fix terrible typo\&. | 585 [fix_typo 615ffa7] Fix terrible typo\&. |
575 1 file changed, 1 insertion(+), 1 deletion(\-) | 586 1 file changed, 1 insertion(+), 1 deletion(\-) |
576 \fB$ git map\fR | 587 \fB$ git map\fR |
577 \fB* 615ffa7 \fR (\fBfix_typo\fR) 2014\-04\-10 ~ Fix terrible typo\&. | 588 \fB* 615ffa7 \fR (\fBfix_typo\fR) 2014\-04\-10 ~ Fix terrible typo\&. |
578 * \fBbeec6f4 \fR (origin/master, origin/HEAD) 2014\-04\-10 ~ Make ReflectorIm
pl use mailboxes\fB <(fix_typo)\fR | 589 * \fBbeec6f4 \fR (origin/master, origin/HEAD) 2014\-04\-10 ~ Make ReflectorIm
pl use mailboxes\fB <(fix_typo)\fR |
579 * \fB41290e0 \fR 2014\-04\-10 ~ don\*(Aqt use glibc\-specific execinfo\&.h on
uclibc builds | 590 * \fB41290e0 \fR 2014\-04\-10 ~ don\*(Aqt use glibc\-specific execinfo\&.h on
uclibc builds |
580 * \fBa76fde7 \fR 2014\-04\-10 ~ [fsp] Add requestUnmount() method together wi
th the request manager\&. | 591 * \fBa76fde7 \fR 2014\-04\-10 ~ [fsp] Add requestUnmount() method together wi
th the request manager\&. |
581 * \fB9de7a71 \fR 2014\-04\-10 ~ linux_aura: Use system configuration for midd
le clicking the titlebar\&. | 592 * \fB9de7a71 \fR 2014\-04\-10 ~ linux_aura: Use system configuration for midd
le clicking the titlebar\&. |
582 * \fB073b0c2 \fR 2014\-04\-10 ~ ContentView\->ContentViewCore in ContentViewR
enderView | 593 * \fB073b0c2 \fR 2014\-04\-10 ~ ContentView\->ContentViewCore in ContentViewR
enderView |
583 * \fB2250f53 \fR 2014\-04\-10 ~ ozone: evdev: Filter devices by path | 594 * \fB2250f53 \fR 2014\-04\-10 ~ ozone: evdev: Filter devices by path |
584 * \fB33a7a74 \fR 2014\-04\-10 ~ Always output seccomp error messages to stder
r | 595 * \fB33a7a74 \fR 2014\-04\-10 ~ Always output seccomp error messages to stder
r |
585 \fB$ git status\fR | 596 \fB$ git status\fR |
586 On branch fix_typo | 597 # On branch fix_typo |
587 Your branch is ahead of \*(Aqorigin/master\*(Aq by 1 commit\&. | 598 # Your branch is ahead of \*(Aqorigin/master\*(Aq by 1 commit\&. |
588 (use "git push" to publish your local commits) | 599 # (use "git push" to publish your local commits) |
589 | 600 # |
590 nothing to commit, working directory clean | 601 nothing to commit, working directory clean |
591 \fB$ git cl upload \-r domo@chromium\&.org \-\-send\-mail\fR | 602 \fB$ git cl upload \-r domo@chromium\&.org \-\-send\-mail\fR |
592 \&.\&.\&. truncated output \&.\&.\&. | 603 \&.\&.\&. truncated output \&.\&.\&. |
593 .fi | 604 .fi |
594 .if n \{\ | 605 .if n \{\ |
595 .RE | 606 .RE |
596 .\} | 607 .\} |
597 .sp | 608 .sp |
598 While we wait for feedback, let\*(Aqs do something else\&. | 609 While we wait for feedback, let\*(Aqs do something else\&. |
599 .sp | 610 .sp |
600 .if n \{\ | 611 .if n \{\ |
601 .RS 4 | 612 .RS 4 |
602 .\} | 613 .\} |
603 .nf | 614 .nf |
604 \fB$ git new\-branch chap2\fR | 615 \fB$ git new\-branch chap2\fR |
605 \fB$ git map\-branches\fR | 616 \fB$ git map\-branches\fR |
606 \fBorigin/master | 617 \fBorigin/master |
607 chap2 * | 618 chap2 * |
608 \fR fix_typo | 619 \fR fix_typo |
609 \fB$ cat >> build/whitespace_file\&.txt <<EOF\fR | 620 \fB$ cat >> build/whitespace_file\&.txt <<EOF\fR |
610 | 621 |
611 "You recall what happened on Mulholland drive?" The ceiling fan rotated slowly | 622 "You recall what happened on Mulholland drive?" The ceiling fan rotated slowly |
612 overhead, barely disturbing the thick cigarette smoke\&. No doubt was left about | 623 overhead, barely disturbing the thick cigarette smoke\&. No doubt was left about |
613 when the fan was last cleaned\&. | 624 when the fan was last cleaned\&. |
614 EOF | 625 EOF |
615 \fB$ git status\fR | 626 \fB$ git status\fR |
616 On branch chap2 | 627 # On branch chap2 |
617 Your branch is up\-to\-date with \*(Aqorigin/master\*(Aq\&. | 628 # Your branch is up\-to\-date with \*(Aqorigin/master\*(Aq\&. |
618 | 629 # |
619 Changes not staged for commit: | 630 # Changes not staged for commit: |
620 (use "git add <file>\&.\&.\&." to update what will be committed) | 631 # (use "git add <file>\&.\&.\&." to update what will be committed) |
621 (use "git checkout \-\- <file>\&.\&.\&." to discard changes in working directo
ry) | 632 # (use "git checkout \-\- <file>\&.\&.\&." to discard changes in working direc
tory) |
622 | 633 # |
623 » modified: build/whitespace_file\&.txt | 634 #» modified: build/whitespace_file\&.txt |
624 | 635 # |
625 no changes added to commit (use "git add" and/or "git commit \-a") | 636 no changes added to commit (use "git add" and/or "git commit \-a") |
626 .fi | 637 .fi |
627 .if n \{\ | 638 .if n \{\ |
628 .RE | 639 .RE |
629 .\} | 640 .\} |
630 .sp | 641 .sp |
631 Someone on the code review pointed out that our typo\-fix has a typo :( We\*(Aqr
e still working on \*(Aqchap2\*(Aq but we really want to land \*(Aqfix_typo\*(Aq
, so let\*(Aqs switch over and fix it\&. | 642 Someone on the code review pointed out that our typo\-fix has a typo :( We\*(Aqr
e still working on \*(Aqchap2\*(Aq but we really want to land \*(Aqfix_typo\*(Aq
, so let\*(Aqs switch over and fix it\&. |
632 .sp | 643 .sp |
633 .if n \{\ | 644 .if n \{\ |
634 .RS 4 | 645 .RS 4 |
635 .\} | 646 .\} |
636 .nf | 647 .nf |
637 \fB$ git freeze\fR | 648 \fB$ git freeze\fR |
638 \fB$ git checkout fix_typo\fR | 649 \fB$ git checkout fix_typo\fR |
639 Switched to branch \*(Aqfix_typo\*(Aq | 650 Switched to branch \*(Aqfix_typo\*(Aq |
640 Your branch is ahead of \*(Aqorigin/master\*(Aq by 1 commit\&. | 651 Your branch is ahead of \*(Aqorigin/master\*(Aq by 1 commit\&. |
641 (use "git push" to publish your local commits) | 652 (use "git push" to publish your local commits) |
642 \fB$ echo \-e \*(Aq/Kuun\ens/Kuun/Kun\enwq\*(Aq | ed build/whitespace_file\&.txt
\fR | 653 \fB$ echo \-e \*(Aq/Kuun\ens/Kuun/Kun\enwq\*(Aq | ed build/whitespace_file\&.txt
\fR |
643 1501 | 654 1501 |
| 655 1500 |
644 It was a Domo\-Kuun\&. | 656 It was a Domo\-Kuun\&. |
645 It was a Domo\-Kun\&. | 657 It was a Domo\-Kun\&. |
646 1500 | |
647 \fB$ git upstream\-diff \-\-wordwise\fR | 658 \fB$ git upstream\-diff \-\-wordwise\fR |
648 \fBdiff \-\-git a/build/whitespace_file\&.txt b/build/whitespace_file\&.txt\fR | 659 \fBdiff \-\-git a/build/whitespace_file\&.txt b/build/whitespace_file\&.txt\fR |
649 \fBindex 3eba355\&.\&.57cdcee 100644\fR | 660 \fBindex 3eba355\&.\&.57cdcee 100644\fR |
650 \fB\-\-\- a/build/whitespace_file\&.txt\fR | 661 \fB\-\-\- a/build/whitespace_file\&.txt\fR |
651 \fB+++ b/build/whitespace_file\&.txt\fR | 662 \fB+++ b/build/whitespace_file\&.txt\fR |
652 @@ \-17,7 +17,7 @@ swept up the streets (for it is in London that our scene lies
), rattling along | 663 @@ \-17,7 +17,7 @@ swept up the streets (for it is in London that our scene lies
), rattling along |
653 the housetops, and fiercely agitating the scanty flame of the lamps that | 664 the housetops, and fiercely agitating the scanty flame of the lamps that |
654 struggled against the elements\&. A hooded figure emerged\&. | 665 struggled against the elements\&. A hooded figure emerged\&. |
655 | 666 |
656 It was a Domo\-BananaKun\&. | 667 It was a Domo\-BananaKun\&. |
(...skipping 390 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1047 .IP " 6." 4 | 1058 .IP " 6." 4 |
1048 main Chromium waterfall | 1059 main Chromium waterfall |
1049 .RS 4 | 1060 .RS 4 |
1050 \%http://build.chromium.org | 1061 \%http://build.chromium.org |
1051 .RE | 1062 .RE |
1052 .IP " 7." 4 | 1063 .IP " 7." 4 |
1053 here | 1064 here |
1054 .RS 4 | 1065 .RS 4 |
1055 \%https://chromium.googlesource.com/chromium/tools/depot_tools.git | 1066 \%https://chromium.googlesource.com/chromium/tools/depot_tools.git |
1056 .RE | 1067 .RE |
OLD | NEW |