X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=Documentation%2Fgit-svnimport.txt;h=63e28b89d5dde9fbaab363b603801e56342e5965;hb=e3c3a550d4815d34b5674776c36cdd6d8a31ab85;hp=a144c6c31ca9131b00be1585a785ede53f87a731;hpb=7ee74a99b2b710b5f5adc22db2fe0aca8a74c809;p=git.git diff --git a/Documentation/git-svnimport.txt b/Documentation/git-svnimport.txt index a144c6c3..63e28b89 100644 --- a/Documentation/git-svnimport.txt +++ b/Documentation/git-svnimport.txt @@ -9,10 +9,11 @@ git-svnimport - Import a SVN repository into git SYNOPSIS -------- -'git-svnimport' [ -o ] [ -h ] [ -v ] - [ -C ] [ -i ] [ -u ] - [ -b branch_subdir ] [ -t trunk_subdir ] [ -T tag_subdir ] - [ -s start_chg ] [ -m ] [ -M regex ] [ ] +'git-svnimport' [ -o ] [ -h ] [ -v ] [ -d | -D ] + [ -C ] [ -i ] [ -u ] [-l limit_rev] + [ -b branch_subdir ] [ -T trunk_subdir ] [ -t tag_subdir ] + [ -s start_chg ] [ -m ] [ -M regex ] + [ ] DESCRIPTION @@ -20,7 +21,7 @@ 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. +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, "branch/FOO" @@ -28,7 +29,7 @@ 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. +incremental SVN imports. OPTIONS ------- @@ -39,43 +40,68 @@ OPTIONS -s :: Start importing at this SVN change number. The default is 1. + -When importing incementally, you might need to edit the .git/svn2git file. +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 cache remain untouched and will + ensures the working directory and index remain untouched and will not create them if they do not exist. --t :: +-T :: Name the SVN trunk. Default "trunk". - --T :: + +-t :: Name the SVN subdirectory for tags. Default "tags". - + -b :: Name the SVN subdirectory for branches. Default "branches". - + -o :: 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. --m:: +-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. + will enable default regexes that try to capture the name source + branch name from the commit message. -M :: 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. + regex. It can be used with -m to also see the default regexes. + You must escape forward slashes. + +-l :: + 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.) -v:: Verbosity: let 'svnimport' report what it is doing. +-d:: + Use direct HTTP requests if possible. The "" 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 "" 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. + :: 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". + +:: + The path to the module you want to check out. -h:: Print a short usage message and exit.