Documentation / git-archimport.txton commit Merge branch 'lt/diffgen' into next (b9aa1f9)
   1git-archimport(1)
   2=================
   3
   4NAME
   5----
   6git-archimport - Import an Arch repository into git
   7
   8
   9SYNOPSIS
  10--------
  11[verse]
  12'git-archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D depth] [-t tempdir]
  13               <archive/branch> [ <archive/branch> ]
  14
  15DESCRIPTION
  16-----------
  17Imports a project from one or more Arch repositories. It will follow branches
  18and repositories within the namespaces defined by the <archive/branch>
  19parameters supplied. If it cannot find the remote branch a merge comes from
  20it will just import it as a regular commit. If it can find it, it will mark it 
  21as a merge whenever possible (see discussion below). 
  22
  23The script expects you to provide the key roots where it can start the import 
  24from an 'initial import' or 'tag' type of Arch commit. It will follow and 
  25import new branches within the provided roots. 
  26
  27It expects to be dealing with one project only. If it sees 
  28branches that have different roots, it will refuse to run. In that case, 
  29edit your <archive/branch> parameters to define clearly the scope of the 
  30import. 
  31
  32`git-archimport` uses `tla` extensively in the background to access the 
  33Arch repository.
  34Make sure you have a recent version of `tla` available in the path. `tla` must
  35know about the repositories you pass to `git-archimport`. 
  36
  37For the initial import `git-archimport` expects to find itself in an empty 
  38directory. To follow the development of a project that uses Arch, rerun 
  39`git-archimport` with the same parameters as the initial import to perform 
  40incremental imports.
  41
  42MERGES
  43------
  44Patch merge data from Arch is used to mark merges in git as well. git 
  45does not care much about tracking patches, and only considers a merge when a
  46branch incorporates all the commits since the point they forked. The end result
  47is that git will have a good idea of how far branches have diverged. So the 
  48import process does lose some patch-trading metadata.
  49
  50Fortunately, when you try and merge branches imported from Arch, 
  51git will find a good merge base, and it has a good chance of identifying 
  52patches that have been traded out-of-sequence between the branches. 
  53
  54OPTIONS
  55-------
  56
  57-h::
  58        Display usage.
  59
  60-v::
  61        Verbose output. 
  62
  63-T::
  64        Many tags. Will create a tag for every commit, reflecting the commit 
  65        name in the Arch repository.
  66
  67-f::
  68        Use the fast patchset import strategy.  This can be significantly
  69        faster for large trees, but cannot handle directory renames or
  70        permissions changes.  The default strategy is slow and safe.
  71
  72-o::
  73        Use this for compatibility with old-style branch names used by
  74        earlier versions of git-archimport.  Old-style branch names
  75        were category--branch, whereas new-style branch names are
  76        archive,category--branch--version.
  77
  78-D <depth>::
  79        Follow merge ancestry and attempt to import trees that have been
  80        merged from.  Specify a depth greater than 1 if patch logs have been
  81        pruned.
  82
  83-a::
  84        Attempt to auto-register archives at http://mirrors.sourcecontrol.net
  85        This is particularly useful with the -D option.
  86
  87-t <tmpdir>::
  88        Override the default tempdir.
  89
  90
  91<archive/branch>::
  92        Archive/branch identifier in a format that `tla log` understands. 
  93
  94
  95Author
  96------
  97Written by Martin Langhoff <martin@catalyst.net.nz>.
  98
  99Documentation
 100--------------
 101Documentation by Junio C Hamano, Martin Langhoff and the git-list <git@vger.kernel.org>.
 102
 103GIT
 104---
 105Part of the gitlink:git[7] suite
 106