]>
Commit | Line | Data |
---|---|---|
215a7ad1 JH |
1 | git-archimport(1) |
2 | ================= | |
5077fa9c JH |
3 | |
4 | NAME | |
5 | ---- | |
a5c500b7 | 6 | git-archimport - Import an Arch repository into GIT |
5077fa9c JH |
7 | |
8 | ||
9 | SYNOPSIS | |
10 | -------- | |
a4c5f9aa ML |
11 | `git-archimport` [ -h ] [ -v ] [ -T ] [ -t tempdir ] |
12 | <archive/branch> [ <archive/branch> ] | |
5077fa9c JH |
13 | |
14 | DESCRIPTION | |
15 | ----------- | |
a4c5f9aa ML |
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 | |
a5c500b7 ML |
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). | |
5077fa9c | 21 | |
a4c5f9aa ML |
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 import | |
24 | new branches within the provided roots. | |
5077fa9c | 25 | |
a4c5f9aa ML |
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, edit your | |
28 | <archive/branch> parameters to define clearly the scope of the import. | |
29 | ||
30 | `git-archimport` uses `tla` extensively in the background to access the Arch repository. | |
31 | Make sure you have a recent version of `tla` available in the path. `tla` must | |
32 | know about the repositories you pass to `git-archimport`. | |
33 | ||
34 | For the initial import `git-archimport` expects to find itself in an empty | |
35 | directory. To follow the development of a project that uses Arch, rerun | |
36 | `git-archimport` with the same parameters as the initial import to perform incremental imports. | |
a4c5f9aa | 37 | |
a5c500b7 ML |
38 | MERGES |
39 | ------ | |
a4c5f9aa ML |
40 | Patch merge data from Arch is used to mark merges in GIT as well. GIT |
41 | does not care much about tracking patches, and only considers a merge when a | |
42 | branch incorporates all the commits since the point they forked. The end result | |
43 | is that GIT will have a good idea of how far branches have diverged. So the | |
44 | import process does lose some patch-trading metadata. | |
45 | ||
46 | Fortunately, when you try and merge branches imported from Arch, | |
47 | GIT will find a good merge base, and it has a good chance of identifying | |
48 | patches that have been traded out-of-sequence between the branches. | |
5077fa9c JH |
49 | |
50 | OPTIONS | |
51 | ------- | |
5077fa9c | 52 | |
a4c5f9aa ML |
53 | -h:: |
54 | Display usage. | |
55 | ||
56 | -v:: | |
57 | Verbose output. | |
58 | ||
59 | -T:: | |
60 | Many tags. Will create a tag for every commit, reflecting the commit | |
61 | name in the Arch repository. | |
62 | ||
63 | -t <tmpdir>:: | |
64 | Override the default tempdir. | |
65 | ||
66 | ||
67 | <archive/branch>:: | |
68 | Archive/branch identifier in a format that `tla log` understands. | |
5077fa9c JH |
69 | |
70 | ||
71 | Author | |
72 | ------ | |
73 | Written by Martin Langhoff <martin@catalyst.net.nz>. | |
74 | ||
75 | Documentation | |
76 | -------------- | |
a4c5f9aa | 77 | Documentation by Junio C Hamano, Martin Langhoff and the git-list <git@vger.kernel.org>. |
5077fa9c JH |
78 | |
79 | GIT | |
80 | --- | |
81 | Part of the link:git.html[git] suite | |
82 |