Updated git_doc to git 1.8
[TortoiseGit.git] / doc / source / en / TortoiseGit / git_doc / git-archimport.xml
blob63fbb61ebafc21f3bd087d130569337df153f6da
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <!DOCTYPE sect2 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">\r
3 \r
4 <sect2 lang="en" id="git-archimport(1)">\r
5     <title>git-archimport(1)</title>\r
6 <indexterm>\r
7 <primary>git-archimport(1)</primary>\r
8 </indexterm>\r
9 <simplesect id="git-archimport(1)__name">\r
10 <title>NAME</title>\r
11 <simpara>git-archimport - Import an Arch repository into git</simpara>\r
12 </simplesect>\r
13 <simplesect id="git-archimport(1)__synopsis">\r
14 <title>SYNOPSIS</title>\r
15 <blockquote>\r
16 <literallayout><emphasis>git archimport</emphasis> [-h] [-v] [-o] [-a] [-f] [-T] [-D depth] [-t tempdir]\r
17                &lt;archive/branch&gt;[:&lt;git-branch&gt;] &#8230;</literallayout>\r
18 </blockquote>\r
19 </simplesect>\r
20 <simplesect id="git-archimport(1)__description">\r
21 <title>DESCRIPTION</title>\r
22 <simpara>Imports a project from one or more Arch repositories. It will follow branches\r
23 and repositories within the namespaces defined by the &lt;archive/branch&gt;\r
24 parameters supplied. If it cannot find the remote branch a merge comes from\r
25 it will just import it as a regular commit. If it can find it, it will mark it\r
26 as a merge whenever possible (see discussion below).</simpara>\r
27 <simpara>The script expects you to provide the key roots where it can start the import\r
28 from an <emphasis>initial import</emphasis> or <emphasis>tag</emphasis> type of Arch commit. It will follow and\r
29 import new branches within the provided roots.</simpara>\r
30 <simpara>It expects to be dealing with one project only. If it sees\r
31 branches that have different roots, it will refuse to run. In that case,\r
32 edit your &lt;archive/branch&gt; parameters to define clearly the scope of the\r
33 import.</simpara>\r
34 <simpara><emphasis>git archimport</emphasis> uses <emphasis>tla</emphasis> extensively in the background to access the\r
35 Arch repository.\r
36 Make sure you have a recent version of <emphasis>tla</emphasis> available in the path. <emphasis>tla</emphasis> must\r
37 know about the repositories you pass to <emphasis>git archimport</emphasis>.</simpara>\r
38 <simpara>For the initial import, <emphasis>git archimport</emphasis> expects to find itself in an empty\r
39 directory. To follow the development of a project that uses Arch, rerun\r
40 <emphasis>git archimport</emphasis> with the same parameters as the initial import to perform\r
41 incremental imports.</simpara>\r
42 <simpara>While <emphasis>git archimport</emphasis> will try to create sensible branch names for the\r
43 archives that it imports, it is also possible to specify git branch names\r
44 manually.  To do so, write a git branch name after each &lt;archive/branch&gt;\r
45 parameter, separated by a colon.  This way, you can shorten the Arch\r
46 branch names and convert Arch jargon to git jargon, for example mapping a\r
47 "PROJECT&#45;&#45;devo&#45;&#45;VERSION" branch to "master".</simpara>\r
48 <simpara>Associating multiple Arch branches to one git branch is possible; the\r
49 result will make the most sense only if no commits are made to the first\r
50 branch, after the second branch is created.  Still, this is useful to\r
51 convert Arch repositories that had been rotated periodically.</simpara>\r
52 </simplesect>\r
53 <simplesect id="git-archimport(1)__merges">\r
54 <title>MERGES</title>\r
55 <simpara>Patch merge data from Arch is used to mark merges in git as well. git\r
56 does not care much about tracking patches, and only considers a merge when a\r
57 branch incorporates all the commits since the point they forked. The end result\r
58 is that git will have a good idea of how far branches have diverged. So the\r
59 import process does lose some patch-trading metadata.</simpara>\r
60 <simpara>Fortunately, when you try and merge branches imported from Arch,\r
61 git will find a good merge base, and it has a good chance of identifying\r
62 patches that have been traded out-of-sequence between the branches.</simpara>\r
63 </simplesect>\r
64 <simplesect id="git-archimport(1)__options">\r
65 <title>OPTIONS</title>\r
66 <variablelist>\r
67 <varlistentry>\r
68 <term>\r
69 -h\r
70 </term>\r
71 <listitem>\r
72 <simpara>\r
73         Display usage.\r
74 </simpara>\r
75 </listitem>\r
76 </varlistentry>\r
77 <varlistentry>\r
78 <term>\r
79 -v\r
80 </term>\r
81 <listitem>\r
82 <simpara>\r
83         Verbose output.\r
84 </simpara>\r
85 </listitem>\r
86 </varlistentry>\r
87 <varlistentry>\r
88 <term>\r
89 -T\r
90 </term>\r
91 <listitem>\r
92 <simpara>\r
93         Many tags. Will create a tag for every commit, reflecting the commit\r
94         name in the Arch repository.\r
95 </simpara>\r
96 </listitem>\r
97 </varlistentry>\r
98 <varlistentry>\r
99 <term>\r
100 -f\r
101 </term>\r
102 <listitem>\r
103 <simpara>\r
104         Use the fast patchset import strategy.  This can be significantly\r
105         faster for large trees, but cannot handle directory renames or\r
106         permissions changes.  The default strategy is slow and safe.\r
107 </simpara>\r
108 </listitem>\r
109 </varlistentry>\r
110 <varlistentry>\r
111 <term>\r
112 -o\r
113 </term>\r
114 <listitem>\r
115 <simpara>\r
116         Use this for compatibility with old-style branch names used by\r
117         earlier versions of <emphasis>git archimport</emphasis>.  Old-style branch names\r
118         were category&#45;&#45;branch, whereas new-style branch names are\r
119         archive,category&#45;&#45;branch&#45;&#45;version.  In both cases, names given\r
120         on the command-line will override the automatically-generated\r
121         ones.\r
122 </simpara>\r
123 </listitem>\r
124 </varlistentry>\r
125 <varlistentry>\r
126 <term>\r
127 -D &lt;depth&gt;\r
128 </term>\r
129 <listitem>\r
130 <simpara>\r
131         Follow merge ancestry and attempt to import trees that have been\r
132         merged from.  Specify a depth greater than 1 if patch logs have been\r
133         pruned.\r
134 </simpara>\r
135 </listitem>\r
136 </varlistentry>\r
137 <varlistentry>\r
138 <term>\r
139 -a\r
140 </term>\r
141 <listitem>\r
142 <simpara>\r
143         Attempt to auto-register archives at <ulink url="http://mirrors.sourcecontrol.net">http://mirrors.sourcecontrol.net</ulink>\r
144         This is particularly useful with the -D option.\r
145 </simpara>\r
146 </listitem>\r
147 </varlistentry>\r
148 <varlistentry>\r
149 <term>\r
150 -t &lt;tmpdir&gt;\r
151 </term>\r
152 <listitem>\r
153 <simpara>\r
154         Override the default tempdir.\r
155 </simpara>\r
156 </listitem>\r
157 </varlistentry>\r
158 <varlistentry>\r
159 <term>\r
160 &lt;archive/branch&gt;\r
161 </term>\r
162 <listitem>\r
163 <simpara>\r
164         Archive/branch identifier in a format that <emphasis>tla log</emphasis> understands.\r
165 </simpara>\r
166 </listitem>\r
167 </varlistentry>\r
168 </variablelist>\r
169 </simplesect>\r
170 <simplesect id="git-archimport(1)__git">\r
171 <title>GIT</title>\r
172 <simpara>Part of the <xref linkend="git(1)" /> suite</simpara>\r
173 </simplesect>\r
174 </sect2>\r