No longer install git-svnimport, move to contrib/examples
This has been proposed for a few times without much reaction from the list. Actually remove it to see who screams. Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
09149c7809
commit
fee9832a8d
179
contrib/examples/git-svnimport.txt
Normal file
179
contrib/examples/git-svnimport.txt
Normal file
@ -0,0 +1,179 @@
|
||||
git-svnimport(1)
|
||||
================
|
||||
v0.1, July 2005
|
||||
|
||||
NAME
|
||||
----
|
||||
git-svnimport - Import a SVN repository into git
|
||||
|
||||
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git-svnimport' [ -o <branch-for-HEAD> ] [ -h ] [ -v ] [ -d | -D ]
|
||||
[ -C <GIT_repository> ] [ -i ] [ -u ] [-l limit_rev]
|
||||
[ -b branch_subdir ] [ -T trunk_subdir ] [ -t tag_subdir ]
|
||||
[ -s start_chg ] [ -m ] [ -r ] [ -M regex ]
|
||||
[ -I <ignorefile_name> ] [ -A <author_file> ]
|
||||
[ -R <repack_each_revs>] [ -P <path_from_trunk> ]
|
||||
<SVN_repository_URL> [ <path> ]
|
||||
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
Imports a SVN repository into git. It will either create a new
|
||||
repository, or incrementally import into an existing one.
|
||||
|
||||
SVN access is done by the SVN::Perl module.
|
||||
|
||||
git-svnimport assumes that SVN repositories are organized into one
|
||||
"trunk" directory where the main development happens, "branches/FOO"
|
||||
directories for branches, and "/tags/FOO" directories for tags.
|
||||
Other subdirectories are ignored.
|
||||
|
||||
git-svnimport creates a file ".git/svn2git", which is required for
|
||||
incremental SVN imports.
|
||||
|
||||
OPTIONS
|
||||
-------
|
||||
-C <target-dir>::
|
||||
The GIT repository to import to. If the directory doesn't
|
||||
exist, it will be created. Default is the current directory.
|
||||
|
||||
-s <start_rev>::
|
||||
Start importing at this SVN change number. The default is 1.
|
||||
+
|
||||
When importing incrementally, you might need to edit the .git/svn2git file.
|
||||
|
||||
-i::
|
||||
Import-only: don't perform a checkout after importing. This option
|
||||
ensures the working directory and index remain untouched and will
|
||||
not create them if they do not exist.
|
||||
|
||||
-T <trunk_subdir>::
|
||||
Name the SVN trunk. Default "trunk".
|
||||
|
||||
-t <tag_subdir>::
|
||||
Name the SVN subdirectory for tags. Default "tags".
|
||||
|
||||
-b <branch_subdir>::
|
||||
Name the SVN subdirectory for branches. Default "branches".
|
||||
|
||||
-o <branch-for-HEAD>::
|
||||
The 'trunk' branch from SVN is imported to the 'origin' branch within
|
||||
the git repository. Use this option if you want to import into a
|
||||
different branch.
|
||||
|
||||
-r::
|
||||
Prepend 'rX: ' to commit messages, where X is the imported
|
||||
subversion revision.
|
||||
|
||||
-u::
|
||||
Replace underscores in tag names with periods.
|
||||
|
||||
-I <ignorefile_name>::
|
||||
Import the svn:ignore directory property to files with this
|
||||
name in each directory. (The Subversion and GIT ignore
|
||||
syntaxes are similar enough that using the Subversion patterns
|
||||
directly with "-I .gitignore" will almost always just work.)
|
||||
|
||||
-A <author_file>::
|
||||
Read a file with lines on the form
|
||||
+
|
||||
------
|
||||
username = User's Full Name <email@addr.es>
|
||||
|
||||
------
|
||||
+
|
||||
and use "User's Full Name <email@addr.es>" as the GIT
|
||||
author and committer for Subversion commits made by
|
||||
"username". If encountering a commit made by a user not in the
|
||||
list, abort.
|
||||
+
|
||||
For convenience, this data is saved to $GIT_DIR/svn-authors
|
||||
each time the -A option is provided, and read from that same
|
||||
file each time git-svnimport is run with an existing GIT
|
||||
repository without -A.
|
||||
|
||||
-m::
|
||||
Attempt to detect merges based on the commit message. This option
|
||||
will enable default regexes that try to capture the name source
|
||||
branch name from the commit message.
|
||||
|
||||
-M <regex>::
|
||||
Attempt to detect merges based on the commit message with a custom
|
||||
regex. It can be used with -m to also see the default regexes.
|
||||
You must escape forward slashes.
|
||||
|
||||
-l <max_rev>::
|
||||
Specify a maximum revision number to pull.
|
||||
+
|
||||
Formerly, this option controlled how many revisions to pull,
|
||||
due to SVN memory leaks. (These have been worked around.)
|
||||
|
||||
-R <repack_each_revs>::
|
||||
Specify how often git repository should be repacked.
|
||||
+
|
||||
The default value is 1000. git-svnimport will do import in chunks of 1000
|
||||
revisions, after each chunk git repository will be repacked. To disable
|
||||
this behavior specify some big value here which is mote than number of
|
||||
revisions to import.
|
||||
|
||||
-P <path_from_trunk>::
|
||||
Partial import of the SVN tree.
|
||||
+
|
||||
By default, the whole tree on the SVN trunk (/trunk) is imported.
|
||||
'-P my/proj' will import starting only from '/trunk/my/proj'.
|
||||
This option is useful when you want to import one project from a
|
||||
svn repo which hosts multiple projects under the same trunk.
|
||||
|
||||
-v::
|
||||
Verbosity: let 'svnimport' report what it is doing.
|
||||
|
||||
-d::
|
||||
Use direct HTTP requests if possible. The "<path>" argument is used
|
||||
only for retrieving the SVN logs; the path to the contents is
|
||||
included in the SVN log.
|
||||
|
||||
-D::
|
||||
Use direct HTTP requests if possible. The "<path>" argument is used
|
||||
for retrieving the logs, as well as for the contents.
|
||||
+
|
||||
There's no safe way to automatically find out which of these options to
|
||||
use, so you need to try both. Usually, the one that's wrong will die
|
||||
with a 40x error pretty quickly.
|
||||
|
||||
<SVN_repository_URL>::
|
||||
The URL of the SVN module you want to import. For local
|
||||
repositories, use "file:///absolute/path".
|
||||
+
|
||||
If you're using the "-d" or "-D" option, this is the URL of the SVN
|
||||
repository itself; it usually ends in "/svn".
|
||||
|
||||
<path>::
|
||||
The path to the module you want to check out.
|
||||
|
||||
-h::
|
||||
Print a short usage message and exit.
|
||||
|
||||
OUTPUT
|
||||
------
|
||||
If '-v' is specified, the script reports what it is doing.
|
||||
|
||||
Otherwise, success is indicated the Unix way, i.e. by simply exiting with
|
||||
a zero exit status.
|
||||
|
||||
Author
|
||||
------
|
||||
Written by Matthias Urlichs <smurf@smurf.noris.de>, with help from
|
||||
various participants of the git-list <git@vger.kernel.org>.
|
||||
|
||||
Based on a cvs2git script by the same author.
|
||||
|
||||
Documentation
|
||||
--------------
|
||||
Documentation by Matthias Urlichs <smurf@smurf.noris.de>.
|
||||
|
||||
GIT
|
||||
---
|
||||
Part of the gitlink:git[7] suite
|
Reference in New Issue
Block a user