SYNOPSIS
git archimport [-h] [-v] [-o] [-a] [-f] [-T] [-D <depth>] [-t <tempdir>] <archive>/<branch>[:<git-branch>]…
DESCRIPTION
1つ以上の GNU Arch リポジトリからプロジェクトをインポートします。これは、提供された <archive>/<branch> パラメーターによって定義された名前空間内のブランチとリポジトリに従います。リモートブランチが見つからない場合は、マージ元から通常のコミットとしてインポートされます。見つかった場合は、可能な限りマージとしてマークします(以下の説明を参照)。
スクリプトは、 initial import
または tag
型のArchコミットからインポートを開始できるキールート(key root)を提供することを想定しています。提供されたルート(root)内の新しいブランチを追跡してインポートします。
1つのプロジェクトのみを扱うことを想定しています。ルート(root)が異なるブランチを検出した場合、実行を拒否します。その場合は、 <archive>/<branch> パラメータを編集して、インポートの範囲を明確に定義します。
git archimport
は、バックグラウンドで tla
を広範囲に使用して、Archリポジトリにアクセスします。パス上に利用可能な tla
の最新バージョンがあることを確認してください。 tla
は、 git archimport
に渡すリポジトリについて知っている必要があります。
最初のインポートでは、 git archimport
は空のディレクトリに自分自身を見つけることをf期待しています。 Archを使用するプロジェクトの開発を追跡するには、最初のインポートと同じパラメーターを使用して「git archimport」を再実行し、増分インポートを実行します。
git archimport
は、インポートするアーカイブに適切なブランチ名を作成しようとしますが、Gitブランチ名を手動で指定することもできます。これを行うには、各 <archive>/<branch> パラメーターの後にコロン(:
)で区切ってGitブランチ名を記述します。このようにして、Archブランチ名を短縮し、Arch専門用語をGit専門用語に変換できます。たとえば、「PROJECT--devo--VERSION」ブランチを「master」にマッピングします。
複数のArchブランチを1つのGitブランチに関連付けることができます。 結果は、2番目のブランチが作成された後、最初のブランチに対してコミットが行われない場合にのみ最も意味があります。それでも、これは定期的にローテーションされたArchリポジトリを変換するのに役立ちます。
MERGES
Archからのパッチマージデータは、Gitでのマージをマークするためにも使用されます。 Gitはパッチの追跡についてはあまり気にせず、分岐した時点以降、ブランチにすべてのコミットが組み込まれている場合にのみマージを考慮します。最終的な結果として、Gitはブランチがどこまで分岐したかを把握できます。したがって、インポートプロセスでは、パッチ取引のメタデータが失われます。
幸い、Archからインポートされたブランチをマージしようとすると、Gitは適切なマージベースを見つけ、ブランチ間で順番どおりにトレードされていないパッチを特定できる可能性が高くなります。
OPTIONS
-
-h
-
使い方表示。
-
-v
-
詳細な出力。
-
-T
-
多くのタグ。Archリポジトリのコミット名を反映して、すべてのコミットにタグを作成します。
-
-f
-
高速パッチセットインポート戦略(fast patchset import strategy)を使用します。これは、大きなツリーでは大幅に高速化できますが、ディレクトリの名前変更やアクセス許可の変更を処理できません。デフォルトの戦略は遅いけど安全(slow and safe)です。
-
-o
-
これは、以前のバージョンの「git archimport」で使用されていた古いスタイルのブランチ名との互換性のために使用します。古いスタイルのブランチ名は category--branch でしたが、新しいスタイルのブランチ名は category--branch--version です。 どちらの場合も、コマンドラインで指定された名前が自動生成された名前を上書きします。
-
-D <depth>
-
マージの祖先に従い、マージされたツリーのインポートを試みます。パッチログが剪定されている場合は、1より大きい深さを指定します。
-
-a
-
http://mirrors.sourcecontrol.net
でアーカイブを自動登録してみてください。これは、-D
オプションを使用すると特に便利です。 -
-t <tmpdir>
-
デフォルトのtempdirをオーバーライドします。
- <archive>/<branch>
-
tla log
が理解できる形式の <archive>/<branch> ID。
GIT
Part of the git(1) suite