You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
174 lines
5.2 KiB
Groff
174 lines
5.2 KiB
Groff
'\" t
|
|
.\" Title: git-drover
|
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
|
.\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/>
|
|
.\" Date: 09/09/2014
|
|
.\" Manual: Chromium depot_tools Manual
|
|
.\" Source: depot_tools 6e7202b
|
|
.\" Language: English
|
|
.\"
|
|
.TH "GIT\-DROVER" "1" "09/09/2014" "depot_tools 6e7202b" "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-drover \- Apply a commit from the trunk to a release branch, or from one release branch to another\&.
|
|
.SH "SYNOPSIS"
|
|
.sp
|
|
.nf
|
|
\fIgit drover\fR
|
|
.fi
|
|
.sp
|
|
.SH "DESCRIPTION"
|
|
.sp
|
|
git drover is NOT IMPLEMENTED yet\&. See the EXAMPLE section for the equivalent sequence of commands to run\&.
|
|
.SH "EXAMPLE"
|
|
.SS "PREREQUISITES"
|
|
.sp
|
|
Before working with branches, you must \fIgclient sync \-\-with_branch_heads\fR at least once to fetch the branches\&.
|
|
.sp
|
|
.it 1 an-trap
|
|
.nr an-no-space-flag 1
|
|
.nr an-break-flag 1
|
|
.br
|
|
.ps +1
|
|
\fBMerge Example\fR
|
|
.RS 4
|
|
.sp
|
|
|
|
.sp
|
|
.if n \{\
|
|
.RS 4
|
|
.\}
|
|
.nf
|
|
# Make sure we have the most up\-to\-date branch sources\&.
|
|
\fB$ git fetch\fR
|
|
|
|
# Here\*(Aqs a commit (from some\&.committer) that we want to \*(Aqdrover\*(Aq\&.
|
|
\fB$ git log \-n 1 \-\-pretty=fuller\fR
|
|
commit 0421d3583f73220c8f88b1a96898fcd81222fe73
|
|
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
|
|
|
|
# Checkout the branch we want to \*(Aqdrover\*(Aq to\&.
|
|
\fB$ git checkout \-b drover_9999 branch\-heads/9999\fR
|
|
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 0421d3583f73220c8f88b1a96898fcd81222fe73\fR
|
|
[drover_9999 5c0a17d] 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(+)
|
|
create mode 100644 modified_file
|
|
|
|
# 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 5c0a17dd382cd098182ac9f486ccd6b86c28d96e
|
|
Author: some\&.committer <some\&.committer@chromium\&.org>
|
|
AuthorDate: Thu Apr 10 08:54:46 2014 +0000
|
|
Commit: you <you@chromium\&.org>
|
|
CommitDate: Thu Apr 10 09:11:36 2014 +0000
|
|
|
|
This change needs to go to branch 9999
|
|
|
|
(cherry picked from commit 0421d3583f73220c8f88b1a96898fcd81222fe73)
|
|
|
|
# Looks good\&. Ship it!
|
|
\fB$ git cl upload\fR
|
|
# Wait for LGTM or TBR it\&.
|
|
\fB$ git cl land\fR
|
|
# Or skip the LGTM/TBR and just \*(Aqgit cl land \-\-bypass\-hooks\*(Aq
|
|
.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
|
|
\fBRevert Example\fR
|
|
.RS 4
|
|
.sp
|
|
|
|
.sp
|
|
.if n \{\
|
|
.RS 4
|
|
.\}
|
|
.nf
|
|
# Make sure we have the most up\-to\-date branch sources\&.
|
|
\fB$ git fetch\fR
|
|
|
|
# Checkout the branch with the change we want to revert\&.
|
|
\fB$ git checkout \-b drover_9999 branch\-heads/9999\fR
|
|
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 28bb44fa7f9d5e19b73a670ae923d3a96dec250a
|
|
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 28bb44fa7f9d5e19b73a670ae923d3a96dec250a\fR
|
|
|
|
# That reverted the change and committed the revert\&.
|
|
\fB$ git log \-n 1\fR
|
|
commit 4618467de1407aa159624015c8c8461ec35fbaf1
|
|
Author: you <you@chromium\&.org>
|
|
Date: Thu Apr 10 09:11:36 2014 +0000
|
|
|
|
Revert "This change is horribly broken\&."
|
|
|
|
This reverts commit 28bb44fa7f9d5e19b73a670ae923d3a96dec250a\&.
|
|
|
|
# As with old drover, reverts are generally OK to commit without LGTM\&.
|
|
\fB$ git cl upload \-r some\&.committer@chromium\&.org \-\-send\-mail\fR
|
|
\fB$ git cl land \-\-bypass\-hooks\fR
|
|
.fi
|
|
.if n \{\
|
|
.RE
|
|
.\}
|
|
.sp
|
|
.RE
|
|
.SH "SEE ALSO"
|
|
.sp
|
|
\fBgit-cherry-pick\fR(1), \fBgit-revert\fR(1)
|
|
.SH "CHROMIUM DEPOT_TOOLS"
|
|
.sp
|
|
Part of the chromium \fBdepot_tools\fR(7) 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
|