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