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.
depot_tools/man/man1/git-drover.1

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/05/2014
.\" Manual: Chromium depot_tools Manual
.\" Source: depot_tools 2171f9c
.\" Language: English
.\"
.TH "GIT\-DROVER" "1" "09/05/2014" "depot_tools 2171f9c" "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 the commit we want to \*(Aqdrover\*(Aq\&.
\fB$ git log \-n 1 \-\-pretty=fuller\fR
commit 14293306d7969cff815969e2502f47794a63fbc5
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 14293306d7969cff815969e2502f47794a63fbc5\fR
[drover_9999 3200a8c] 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\&.commiter and commited it to the
# branch by branch\&.maintainer (us)\&.
\fB$ git log \-n 1 \-\-pretty=fuller\fR
commit 3200a8cb2072a7c84aaba52baaecbf5e4d17ad00
Author: some\&.committer <some\&.committer@chromium\&.org>
AuthorDate: Thu Apr 10 08:54:46 2014 +0000
Commit: branch\&.maintainer <branch\&.maintainer@chromium\&.org>
CommitDate: Thu Apr 10 09:11:36 2014 +0000
This change needs to go to branch 9999
(cherry picked from commit 14293306d7969cff815969e2502f47794a63fbc5)
# 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 4803efead17077ecd40440caef2e78d1c66098cf
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 4803efead17077ecd40440caef2e78d1c66098cf\fR
# That reverted the change and committed the revert\&.
\fB$ git log \-n 1\fR
commit 52350f2809ce71352326f1518feae57ac5152f18
Author: branch\&.maintainer <branch\&.maintainer@chromium\&.org>
Date: Thu Apr 10 09:11:36 2014 +0000
Revert "This change is horribly broken\&."
This reverts commit 4803efead17077ecd40440caef2e78d1c66098cf\&.
# 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