logo

oasis-root

Compiled tree of Oasis Linux based on own branch at <https://hacktivis.me/git/oasis/> git clone https://anongit.hacktivis.me/git/oasis-root.git

git-archimport.1 (5454B)


  1. '\" t
  2. .\" Title: git-archimport
  3. .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
  4. .\" Generator: DocBook XSL Stylesheets v1.79.2 <http://docbook.sf.net/>
  5. .\" Date: 2025-03-14
  6. .\" Manual: Git Manual
  7. .\" Source: Git 2.49.0
  8. .\" Language: English
  9. .\"
  10. .TH "GIT\-ARCHIMPORT" "1" "2025-03-14" "Git 2\&.49\&.0" "Git Manual"
  11. .\" -----------------------------------------------------------------
  12. .\" * Define some portability stuff
  13. .\" -----------------------------------------------------------------
  14. .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  15. .\" http://bugs.debian.org/507673
  16. .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
  17. .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  18. .ie \n(.g .ds Aq \(aq
  19. .el .ds Aq '
  20. .\" -----------------------------------------------------------------
  21. .\" * set default formatting
  22. .\" -----------------------------------------------------------------
  23. .\" disable hyphenation
  24. .nh
  25. .\" disable justification (adjust text to left margin only)
  26. .ad l
  27. .\" -----------------------------------------------------------------
  28. .\" * MAIN CONTENT STARTS HERE *
  29. .\" -----------------------------------------------------------------
  30. .SH "NAME"
  31. git-archimport \- Import a GNU Arch repository into Git
  32. .SH "SYNOPSIS"
  33. .sp
  34. .nf
  35. \fIgit archimport\fR [\-h] [\-v] [\-o] [\-a] [\-f] [\-T] [\-D <depth>] [\-t <tempdir>]
  36. <archive>/<branch>[:<git\-branch>]\&...\:
  37. .fi
  38. .SH "DESCRIPTION"
  39. .sp
  40. Imports a project from one or more GNU 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)\&.
  41. .sp
  42. 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\&.
  43. .sp
  44. 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\&.
  45. .sp
  46. \fIgit archimport\fR uses \fBtla\fR extensively in the background to access the Arch repository\&. Make sure you have a recent version of \fBtla\fR available in the path\&. \fBtla\fR must know about the repositories you pass to \fIgit archimport\fR\&.
  47. .sp
  48. For the initial import, \fIgit archimport\fR expects to find itself in an empty directory\&. To follow the development of a project that uses Arch, rerun \fIgit archimport\fR with the same parameters as the initial import to perform incremental imports\&.
  49. .sp
  50. While \fIgit archimport\fR will try to create sensible branch names for the archives that it imports, it is also possible to specify Git branch names manually\&. To do so, write a Git branch name after each <archive>/<branch> parameter, separated by a colon\&. This way, you can shorten the Arch branch names and convert Arch jargon to Git jargon, for example mapping a "PROJECT\-\-devo\-\-VERSION" branch to "master"\&.
  51. .sp
  52. Associating multiple Arch branches to one Git branch is possible; the result will make the most sense only if no commits are made to the first branch, after the second branch is created\&. Still, this is useful to convert Arch repositories that had been rotated periodically\&.
  53. .SH "MERGES"
  54. .sp
  55. 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\&.
  56. .sp
  57. 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\&.
  58. .SH "OPTIONS"
  59. .PP
  60. \-h
  61. .RS 4
  62. Display usage\&.
  63. .RE
  64. .PP
  65. \-v
  66. .RS 4
  67. Verbose output\&.
  68. .RE
  69. .PP
  70. \-T
  71. .RS 4
  72. Many tags\&. Will create a tag for every commit, reflecting the commit name in the Arch repository\&.
  73. .RE
  74. .PP
  75. \-f
  76. .RS 4
  77. 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\&.
  78. .RE
  79. .PP
  80. \-o
  81. .RS 4
  82. Use this for compatibility with old\-style branch names used by earlier versions of
  83. \fIgit archimport\fR\&. Old\-style branch names were category\-\-branch, whereas new\-style branch names are archive,category\-\-branch\-\-version\&. In both cases, names given on the command\-line will override the automatically\-generated ones\&.
  84. .RE
  85. .PP
  86. \-D <depth>
  87. .RS 4
  88. 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\&.
  89. .RE
  90. .PP
  91. \-a
  92. .RS 4
  93. Attempt to auto\-register archives at
  94. \fBhttp://mirrors\&.sourcecontrol\&.net\fR
  95. This is particularly useful with the \-D option\&.
  96. .RE
  97. .PP
  98. \-t <tmpdir>
  99. .RS 4
  100. Override the default tempdir\&.
  101. .RE
  102. .PP
  103. <archive>/<branch>
  104. .RS 4
  105. <archive>/<branch> identifier in a format that
  106. \fBtla\fR
  107. \fBlog\fR
  108. understands\&.
  109. .RE
  110. .SH "GIT"
  111. .sp
  112. Part of the \fBgit\fR(1) suite