Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(780)

Unified Diff: man/man1/git-drover.1

Issue 1397313002: Support merging with conflicts with git-drover. (Closed) Base URL: https://chromium.googlesource.com/chromium/tools/depot_tools.git@master
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « man/html/git-drover.html ('k') | man/src/git-drover.txt » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: man/man1/git-drover.1
diff --git a/man/man1/git-drover.1 b/man/man1/git-drover.1
index 2041fa18ec3eb162de5e4096fe922b0d020708a6..82744a2dd196fb96aac7d9888ed2b06846eea8c5 100644
--- a/man/man1/git-drover.1
+++ b/man/man1/git-drover.1
@@ -2,12 +2,12 @@
.\" Title: git-drover
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\" Date: 09/23/2015
+.\" Date: 10/20/2015
.\" Manual: Chromium depot_tools Manual
-.\" Source: depot_tools 4549a59
+.\" Source: depot_tools 704d890
.\" Language: English
.\"
-.TH "GIT\-DROVER" "1" "09/23/2015" "depot_tools 4549a59" "Chromium depot_tools Manual"
+.TH "GIT\-DROVER" "1" "10/20/2015" "depot_tools 704d890" "Chromium depot_tools Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@@ -32,14 +32,16 @@ git-drover \- Apply a commit from the trunk to a release branch, or from one rel
.SH "SYNOPSIS"
.sp
.nf
-\fIgit drover\fR \-\-branch <branch> \-\-cherry\-pick <commit>
+\fIgit drover\fR \-\-branch <branch>
+ (\-\-cherry\-pick <change> | \-\-continue [path_to_workdir] |
+ \-\-abort [path_to_workdir])
[\-\-parent_checkout <path\-to\-existing\-checkout>]
[\-\-verbose] [\-\-dry\-run]
.fi
.sp
.SH "DESCRIPTION"
.sp
-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\&.
+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\&.
.sp
git drover does not support reverts\&. See the EXAMPLE section for the equivalent sequence of commands to run\&.
.SH "OPTIONS"
@@ -54,6 +56,16 @@ The branch to cherry\-pick the commit to\&.
The commit to cherry\-pick\&.
.RE
.PP
+\-\-continue [path_to_workdir]
+.RS 4
+Continue a cherry\-pick that required manual resolution\&. The path to the drover workdir is optional\&. If unspecified, the current directory is used\&.
+.RE
+.PP
+\-\-abort [path_to_workdir]
+.RS 4
+Abort a cherry\-pick that required manual resolution and clean up its workdir\&. The path to the drover workdir is optional\&. If unspecified, the current directory is used\&.
+.RE
+.PP
\-\-parent_checkout
.RS 4
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 directory is used\&.
@@ -89,7 +101,54 @@ Before working with branches, you must \fIgclient sync \-\-with_branch_heads\fR
.nf
# Here\*(Aqs a commit (from some\&.committer) that we want to \*(Aqdrover\*(Aq\&.
\fB$ git log \-n 1 \-\-pretty=fuller\fR
-commit b5a049e34297f22a4ea63567b32e3290bb3f244c
+commit 9b111fcda69cb6bf8a38d1e77867c298d80ca9d1
+Author: some\&.committer <some\&.committer@chromium\&.org>
+AuthorDate: Thu Apr 10 08:54:46 2014 +0000
+Commit: some\&.committer <some\&.committer@chromium\&.org>
+CommitDate: Thu Apr 10 08:54:46 2014 +0000
+
+ This change needs to go to branch 9999
+
+# Now do the \*(Aqdrover\*(Aq\&.
+\fB$ git drover \-\-branch 9999 \-\-cherry\-pick 9b111fcda69cb6bf8a38d1e77867c298d80ca9d1\fR
+Going to cherry\-pick
+"""
+commit 9b111fcda69cb6bf8a38d1e77867c298d80ca9d1
+Author: some\&.committer <some\&.committer@chromium\&.org>
+Date: Thu Apr 10 08:54:46 2014 +0000
+
+ This change needs to go to branch 9999
+"""
+to 9999\&. Continue (y/n)? y
+
+# A cl is uploaded to rietveld, where it can be reviewed before landing\&.
+
+About to land on 9999\&. Continue (y/n)? y
+# The cherry\-pick cl is landed on the branch 9999\&.
+.fi
+.if n \{\
+.RE
+.\}
+.sp
+.RE
+.sp
+.it 1 an-trap
+.nr an-no-space-flag 1
+.nr an-break-flag 1
+.br
+.ps +1
+\fBMerge with Conflicts Example\fR
+.RS 4
+.sp
+
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+# Here\*(Aqs a commit (from some\&.committer) that we want to \*(Aqdrover\*(Aq\&.
+\fB$ git log \-n 1 \-\-pretty=fuller\fR
+commit 89ce5bb7bdf7149754b94e4d9fc5413435e6680d
Author: some\&.committer <some\&.committer@chromium\&.org>
AuthorDate: Thu Apr 10 08:54:46 2014 +0000
Commit: some\&.committer <some\&.committer@chromium\&.org>
@@ -98,10 +157,10 @@ CommitDate: Thu Apr 10 08:54:46 2014 +0000
This change needs to go to branch 9999
# Now do the \*(Aqdrover\*(Aq\&.
-\fB$ git drover \-\-branch 9999 \-\-cherry\-pick b5a049e34297f22a4ea63567b32e3290bb3f244c\fR
+\fB$ git drover \-\-branch 9999 \-\-cherry\-pick 89ce5bb7bdf7149754b94e4d9fc5413435e6680d\fR
Going to cherry\-pick
"""
-commit b5a049e34297f22a4ea63567b32e3290bb3f244c
+commit 89ce5bb7bdf7149754b94e4d9fc5413435e6680d
Author: some\&.committer <some\&.committer@chromium\&.org>
Date: Thu Apr 10 08:54:46 2014 +0000
@@ -109,6 +168,23 @@ Date: Thu Apr 10 08:54:46 2014 +0000
"""
to 9999\&. Continue (y/n)? y
+Error: Patch failed to apply\&.
+
+A workdir for this cherry\-pick has been created in
+ /tmp/drover_9999
+
+To continue, resolve the conflicts there and run
+ git drover \-\-continue /tmp/drover_9999
+
+To abort this cherry\-pick run
+ git drover \-\-abort /tmp/drover_9999
+
+\fB$ pushd /tmp/drover_9999\fR
+# Manually resolve conflicts\&.
+\fB$ git add path/to/file_with_conflicts\fR
+\fB$ popd\fR
+\fB$ git drover \-\-continue /tmp/drover_9999\fR
+
# A cl is uploaded to rietveld, where it can be reviewed before landing\&.
About to land on 9999\&. Continue (y/n)? y
@@ -143,24 +219,24 @@ Branch drover_9999 set up to track remote ref refs/branch\-heads/9999\&.
# Here\*(Aqs the commit we want to revert\&.
\fB$ git log \-n 1\fR
-commit 215689406a8ca5813412becc6258509be903db59
+commit d5efb50dcc76ea29ad30d1015fb291a9ba5fc0db
Author: some\&.committer <some\&.committer@chromium\&.org>
Date: Thu Apr 10 08:54:46 2014 +0000
This change is horribly broken\&.
# Now do the revert\&.
-\fB$ git revert 215689406a8ca5813412becc6258509be903db59\fR
+\fB$ git revert d5efb50dcc76ea29ad30d1015fb291a9ba5fc0db\fR
# That reverted the change and committed the revert\&.
\fB$ git log \-n 1\fR
-commit 1efaf0e8b1c6c6afadfb37e15023b52b960ac2fd
+commit 1b6ccf84e2c13c6f6a2b69b29626aed8fa0ae24d
Author: you <you@chromium\&.org>
Date: Thu Apr 10 09:11:36 2014 +0000
Revert "This change is horribly broken\&."
- This reverts commit 215689406a8ca5813412becc6258509be903db59\&.
+ This reverts commit d5efb50dcc76ea29ad30d1015fb291a9ba5fc0db\&.
# As with old drover, reverts are generally OK to commit without LGTM\&.
\fB$ git cl upload \-r some\&.committer@chromium\&.org \-\-send\-mail\fR
@@ -191,7 +267,7 @@ Date: Thu Apr 10 09:11:36 2014 +0000
# Here\*(Aqs a commit (from some\&.committer) that we want to \*(Aqdrover\*(Aq\&.
\fB$ git log \-n 1 \-\-pretty=fuller\fR
-commit 640f962733bfd2b9c44539a0d65952643750957e
+commit 2655f8d9d48f18dbfed237c67b8c65134050b2e3
Author: some\&.committer <some\&.committer@chromium\&.org>
AuthorDate: Thu Apr 10 08:54:46 2014 +0000
Commit: some\&.committer <some\&.committer@chromium\&.org>
@@ -205,8 +281,8 @@ Branch drover_9999 set up to track remote ref refs/branch\-heads/9999\&.
# Now do the \*(Aqdrover\*(Aq\&.
# IMPORTANT!!! Do Not leave off the \*(Aq\-x\*(Aq flag
-\fB$ git cherry\-pick \-x 640f962733bfd2b9c44539a0d65952643750957e\fR
-[drover_9999 5f1ae97] This change needs to go to branch 9999
+\fB$ git cherry\-pick \-x 2655f8d9d48f18dbfed237c67b8c65134050b2e3\fR
+[drover_9999 589e8ad] This change needs to go to branch 9999
Author: some\&.committer <some\&.committer@chromium\&.org>
Date: Thu Apr 10 08:54:46 2014 +0000
1 file changed, 1 insertion(+)
@@ -215,7 +291,7 @@ Branch drover_9999 set up to track remote ref refs/branch\-heads/9999\&.
# That took the code authored by some\&.committer and committed it to
# the branch by the person who drovered it (i\&.e\&. you)\&.
\fB$ git log \-n 1 \-\-pretty=fuller\fR
-commit 5f1ae978a8d05c16d8ed812163b7aa927f028bf9
+commit 589e8adbb095944100d029724b4038094120f23b
Author: some\&.committer <some\&.committer@chromium\&.org>
AuthorDate: Thu Apr 10 08:54:46 2014 +0000
Commit: you <you@chromium\&.org>
@@ -223,7 +299,7 @@ CommitDate: Thu Apr 10 09:11:36 2014 +0000
This change needs to go to branch 9999
- (cherry picked from commit 640f962733bfd2b9c44539a0d65952643750957e)
+ (cherry picked from commit 2655f8d9d48f18dbfed237c67b8c65134050b2e3)
# Looks good\&. Ship it!
\fB$ git cl upload\fR
« no previous file with comments | « man/html/git-drover.html ('k') | man/src/git-drover.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698