fcda0125af92ff9c3d72d711a78d23118787608c
[git.git] / Documentation / git-archimport.txt
1 git-archimport(1)
2 =================
3
4 NAME
5 ----
6 git-archimport - Import an Arch repository into git
7
8
9 SYNOPSIS
10 --------
11 `git-archimport` [ -h ] [ -v ] [ -T ] [ -t tempdir ] 
12                  <archive/branch> [ <archive/branch> ]
13
14 DESCRIPTION
15 -----------
16 Imports a project from one or more Arch repositories. It will follow branches
17 and repositories within the namespaces defined by the <archive/branch>
18 parameters suppplied. If it cannot find the remote branch a merge comes from
19 it will just import it as a regular commit. If it can find it, it will mark it 
20 as a merge whenever possible (see discussion below). 
21
22 The script expects you to provide the key roots where it can start the import 
23 from an 'initial import' or 'tag' type of Arch commit. It will follow and 
24 import new branches within the provided roots. 
25
26 It expects to be dealing with one project only. If it sees 
27 branches that have different roots, it will refuse to run. In that case, 
28 edit your <archive/branch> parameters to define clearly the scope of the 
29 import. 
30
31 `git-archimport` uses `tla` extensively in the background to access the 
32 Arch repository.
33 Make sure you have a recent version of `tla` available in the path. `tla` must
34 know about the repositories you pass to `git-archimport`. 
35
36 For the initial import `git-archimport` expects to find itself in an empty 
37 directory. To follow the development of a project that uses Arch, rerun 
38 `git-archimport` with the same parameters as the initial import to perform 
39 incremental imports.
40
41 MERGES
42 ------
43 Patch merge data from Arch is used to mark merges in git as well. git 
44 does not care much about tracking patches, and only considers a merge when a
45 branch incorporates all the commits since the point they forked. The end result
46 is that git will have a good idea of how far branches have diverged. So the 
47 import process does lose some patch-trading metadata.
48
49 Fortunately, when you try and merge branches imported from Arch, 
50 git will find a good merge base, and it has a good chance of identifying 
51 patches that have been traded out-of-sequence between the branches. 
52
53 OPTIONS
54 -------
55
56 -h::
57         Display usage.
58
59 -v::
60         Verbose output. 
61
62 -T::
63         Many tags. Will create a tag for every commit, reflecting the commit 
64         name in the Arch repository.
65
66 -t <tmpdir>::
67         Override the default tempdir.
68
69
70 <archive/branch>::
71         Archive/branch identifier in a format that `tla log` understands. 
72
73
74 Author
75 ------
76 Written by Martin Langhoff <martin@catalyst.net.nz>.
77
78 Documentation
79 --------------
80 Documentation by Junio C Hamano, Martin Langhoff and the git-list <git@vger.kernel.org>.
81
82 GIT
83 ---
84 Part of the gitlink:git[7] suite
85