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