简体中文 ▾ 主题 ▾ 最新版本 ▾ git-archimport 最后更新于 2.35.0

名称

git-archimport - 将 GNU Arch 存储库导入到 Git 中

概要

git archimport [-h] [-v] [-o] [-a] [-f] [-T] [-D <depth>] [-t <tempdir>]
	       <archive>/<branch>[:<git-branch>]…​

描述

从一个或多个 GNU Arch 存储库导入项目。它将遵循由提供的 <archive>/<branch> 参数定义的命名空间中的分支和存储库。如果找不到合并来自的远程分支,它将只将其导入为常规提交。如果它可以找到它,它将尽可能将其标记为合并(请参阅下面的讨论)。

该脚本希望您提供密钥根,它可以从*初始导入*或*标签*类型的 Arch 提交开始导入。 它将遵循并导入所提供根目录中的新分支。

它希望只处理一个项目。如果它看到具有不同根的分支,它将拒绝运行。 在这种情况下,请编辑您的 <archive>/<branch> 参数以清楚地定义导入的范围。

git archimport 在后台大量使用 tla 来访问 Arch 存储库。 确保您在路径中有一个最新版本的 tla 可用。 tla 必须知道您传递给 git archimport 的存储库。

对于初始导入,git archimport 希望找到它自己在空目录中。 要跟踪使用 Arch 的项目开发,请使用与初始导入相同的参数重新运行 git archimport 以执行增量导入。

虽然 git archimport 会尝试为它导入的归档创建合理的git分支名称,但也可以手动指定 Git 分支名称。 为此,在每个 <archive>/<branch> 参数之后写入 Git 分支名称,用冒号分隔。 这样,您可以缩短 Arch 分支名称并将 Arch 术语转换为 Git 术语,例如将“PROJECT--devo--VERSION”分支映射到“master”。

可以将多个 Arch 分支关联到一个 Git 分支; 只有在创建第二个分支后,才不会对第一个分支进行任何提交,结果才最有意义。 尽管如此,这对于转换定期轮换的 Arch 存储库很有用。

合并

来自 Arch 的补丁合并数据也用于将合并标记为 Git。 Git 不太关心跟踪补丁,只会在分支合并它们分叉以来的所有提交时才考虑合并。 最终结果是 Git 将对分支发散的程度有一个很好的了解。 所以导入过程确实丢失了一些补丁交易元数据。

幸运的是,当您尝试合并从 Arch 导入的分支时,Git 会找到一个好的合并基础,并且它很有可能识别出在分支之间顺序颠倒交易的补丁。

选项

-h

显示用法。

-v

详细输出。

-T

许多标签。 将为每个提交创建一个标签,反映 Arch 存储库中的提交名称。

-f

使用快速补丁集导入策略。 对于大型树,这可能会显着加快速度,但无法处理目录重命名或权限更改。 默认策略是缓慢且安全的。

-o

使用此选项与早期版本的 git archimport 使用的旧式分支名称兼容。 旧式分支名称为 category--branch,而新式分支名称为 archive,category--branch--version。 在这两种情况下,命令行中给出的名称将覆盖自动生成的名称。

-D <depth>

跟踪合并祖先并尝试导入已从中合并的树。 如果补丁日志已被修剪,请指定大于 1 的深度。

-a

尝试在 http://mirrors.sourcecontrol.net 自动注册档案。 这在使用 -D 选项时特别有用。

-t <tmpdir>

覆盖默认临时目录。

<archive>/<branch>

<archive>/<branch> tla log 可理解的格式的标识符。

GIT

git[1] 套件的一部分

scroll-to-top