.\"Generated by db2man.xsl. Don't modify this, modify the source. .de Sh \" Subsection .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Ip \" List item .br .ie \\n(.$>=3 .ne \\$3 .el .ne 3 .IP "\\$1" \\$2 .. .TH "GIT-ARCHIMPORT" 1 "" "" "" .SH NAME git-archimport \- Import an Arch repository into git .SH "SYNOPSIS" .nf \fIgit\-archimport\fR [\-h] [\-v] [\-o] [\-a] [\-f] [\-T] [\-D depth] [\-t tempdir] [ ] .fi .SH "DESCRIPTION" Imports a project from one or more Arch repositories\&. It will follow branches and repositories within the namespaces defined by the 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)\&. 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\&. 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 parameters to define clearly the scope of the import\&. 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\&. 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\&. .SH "MERGES" 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\&. 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\&. .SH "OPTIONS" .TP \-h Display usage\&. .TP \-v Verbose output\&. .TP \-T Many tags\&. Will create a tag for every commit, reflecting the commit name in the Arch repository\&. .TP \-f 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\&. .TP \-o 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\&. .TP \-D 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\&. .TP \-a Attempt to auto\-register archives at http://mirrors\&.sourcecontrol\&.net This is particularly useful with the \-D option\&. .TP \-t Override the default tempdir\&. .TP Archive/branch identifier in a format that tla log understands\&. .SH "AUTHOR" Written by Martin Langhoff \&. .SH "DOCUMENTATION" Documentation by Junio C Hamano, Martin Langhoff and the git\-list \&. .SH "GIT" Part of the \fBgit\fR(7) suite