tip479

Help: import
Login

The "import" command:

Usage: fossil import ?--git? ?OPTIONS? NEW-REPOSITORY ?INPUT-FILE?
   or: fossil import --svn ?OPTIONS? NEW-REPOSITORY ?INPUT-FILE?

Read interchange format generated by another VCS and use it to
construct a new Fossil repository named by the NEW-REPOSITORY
argument.  If no input file is supplied the interchange format
data is read from standard input.

The following formats are currently understood by this command

  --git        Import from the git-fast-export file format (default)
               Options:
                 --import-marks  FILE Restore marks table from FILE
                 --export-marks  FILE Save marks table to FILE
                 --rename-master NAME Renames the master branch to NAME
                 --use-author    Uses author as the committer

  --svn        Import from the svnadmin-dump file format.  The default
               behaviour (unless overridden by --flat) is to treat 3
               folders in the SVN root as special, following the
               common layout of SVN repositories.  These are (by
               default) trunk/, branches/ and tags/.  The SVN --deltas
               format is supported but not required.
               Options:
                 --trunk FOLDER     Name of trunk folder
                 --branches FOLDER  Name of branches folder
                 --tags FOLDER      Name of tags folder
                 --base PATH        Path to project root in repository
                 --flat             The whole dump is a single branch
                 --rev-tags         Tag each revision, implied by -i
                 --no-rev-tags      Disables tagging effect of -i
                 --rename-rev PAT   Rev tag names, default "svn-rev-%"
                 --ignore-tree DIR  Ignores subtree rooted at DIR

Common Options:
  -i|--incremental     allow importing into an existing repository
  -f|--force           overwrite repository if already exists
  -q|--quiet           omit progress output
  --no-rebuild         skip the "rebuilding metadata" step
  --no-vacuum          skip the final VACUUM of the database file
  --rename-trunk NAME  use NAME as name of imported trunk branch
  --rename-branch PAT  rename all branch names using PAT pattern
  --rename-tag PAT     rename all tag names using PAT pattern

The --incremental option allows an existing repository to be extended
with new content.  The --rename-* options may be useful to avoid name
conflicts when using the --incremental option.

The argument to --rename-* contains one "%" character to be replaced
with the original name.  For example, "--rename-tag svn-%-tag" renames
the tag called "release" to "svn-release-tag".

--ignore-tree is useful for importing Subversion repositories which
move branches to subdirectories of "branches/deleted" instead of
deleting them.  It can be supplied multiple times if necessary.

See also: export