| '\" t |
| .\" Title: git-auto-svn |
| .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] |
| .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> |
| .\" Date: 09/30/2014 |
| .\" Manual: Chromium depot_tools Manual |
| .\" Source: depot_tools 2bbacdc |
| .\" Language: English |
| .\" |
| .TH "GIT\-AUTO\-SVN" "1" "09/30/2014" "depot_tools 2bbacdc" "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-auto-svn \- Automatically set up git\-svn metadata for a repo mirrored from SVN\&. |
| .SH "SYNOPSIS" |
| .sp |
| .nf |
| \fIgit auto\-svn\fR |
| .fi |
| .sp |
| .SH "DESCRIPTION" |
| .sp |
| git auto\-svn automatically sets up git\-svn metadata and runs git\-svn fetch for repos that are homed in SVN but mirrored to Git (such as depot_tools itself)\&. |
| .sp |
| It determines the metadata to use by inspecting the git\-svn\-id footer of the HEAD of the remote upstream ref (by default, origin/master)\&. git\-svn\-id footers look like this: |
| .sp |
| .if n \{\ |
| .RS 4 |
| .\} |
| .nf |
| git\-svn\-id: svn://some\&.host\&.org/repo/path/to/a/sub/folder@123456 0039d316\-1c4b\-4281\-b951\-d872f2087c98 |
| .fi |
| .if n \{\ |
| .RE |
| .\} |
| .sp |
| git auto\-svn extracts the repository url (svn://some\&.host\&.org/repo/path/to/a/sub/folder) from the git\-svn\-id, and splits it into the root repository (svn://some\&.host\&.org/repo) and the path within that repository (/path/to/a/sub/folder)\&. |
| .sp |
| It then sets up the following stanza in \&.git/config: |
| .sp |
| .if n \{\ |
| .RS 4 |
| .\} |
| .nf |
| [svn\-remote "svn"] |
| url = svn://some\&.host\&.org/repo |
| fetch = path/to/a/sub/folder:refs/remotes/origin/master |
| .fi |
| .if n \{\ |
| .RE |
| .\} |
| .sp |
| Finally, it runs git svn fetch to pull in the data from the svn remote\&. |
| .SH "CONFIGURATION VARIABLES" |
| .SS "svn\-remote\&.svn\&.url" |
| .sp |
| This is the url of the root of the remote svn repository\&. |
| .SS "svn\-remote\&.svn\&.fetch" |
| .sp |
| This looks like a git refspec, but maps a subdirectory of the svn repository to a single ref in the git remote\&. |
| .SH "EXAMPLE" |
| .sp |
| .if n \{\ |
| .RS 4 |
| .\} |
| .nf |
| git clone https://chromium\&.googlesource\&.com/chromium/tools/depot_tools |
| cd depot_tools |
| git auto\-svn |
| .fi |
| .if n \{\ |
| .RE |
| .\} |
| .sp |
| This results in the following stanza in depot_tools/\&.git/config: |
| .sp |
| .if n \{\ |
| .RS 4 |
| .\} |
| .nf |
| [svn\-remote "svn"] |
| url = svn://svn\&.chromium\&.org/chrome |
| fetch = trunk/tools/depot_tools:refs/remotes/origin/master |
| .fi |
| .if n \{\ |
| .RE |
| .\} |
| .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 |