英語 ▾ トピック ▾ 最新バージョン ▾ git-multi-pack-index は 2.47.0 で最終更新

名前

git-multi-pack-index - マルチパックインデックスの書き込みと検証

概要

git multi-pack-index [--object-dir=<dir>] [--[no-]bitmap] <sub-command>

説明

マルチパックインデックス(MIDX)ファイルを作成または検証します。

オプション

--object-dir=<dir>

Gitオブジェクトの格納場所として指定されたディレクトリを使用します。現在のMIDXファイルについては<dir>/packs/multi-pack-indexを、インデックスを作成するパックファイルについては<dir>/packsをチェックします。

<dir>は現在のリポジトリの代替でなければなりません。

--[no-]progress

明示的に進捗表示をオン/オフします。どちらも指定されていない場合、標準エラー出力がターミナルに接続されている場合に限り進捗が表示されます。writeverifyexpire、および`repack`のサブコマンドでサポートされています。

次のサブコマンドが利用可能です。

write

新しいMIDXファイルを作成します。writeサブコマンドで利用可能なオプションは以下の通りです。

--preferred-pack=<pack>

複数のパックが同じオブジェクトを含んでいる場合に、タイブレークに使用するパックをオプションで指定します。<pack>は少なくとも1つのオブジェクトを含んでいる必要があります。指定されていない場合、mtimeが最も小さいパックが優先されます。

--[no-]bitmap

マルチパックビットマップを作成するかどうかを制御します。

--stdin-packs

標準入力で提供された行区切りのパックインデックスベース名のセットのみを含むマルチパックインデックスを作成します。

--refs-snapshot=<path>

--bitmapと一緒に、再パックする前に取得された「参照スナップショット」を含むファイルをオプションで指定します。

参照スナップショットは、通常新しいパックを生成する前にgit repackによって取得される、参照チップに対応する行区切りのOIDで構成されます。行はオプションで+文字で始まることができ、そのOIDに対応する参照が「優先」されることを示します(git-config[1]pack.preferBitmapTipsを参照)。

<path>で指定されたファイルは読み取り可能であり、重複を含むことができます。(特定のOIDが複数回指定された場合、少なくとも1つのインスタンスが特別な+マーカーで始まる場合は、優先としてマークされます)。

--incremental

既存のMIDXレイヤーに存在しないオブジェクトとパックのみを含む増分MIDXファイルを作成します。必要に応じて、非増分MIDXを増分MIDXに移行します。--bitmapとは互換性がありません。

verify

MIDXファイルの内容を検証します。

expire

MIDXファイルによって追跡されているが、MIDXによって参照されるオブジェクトがないパックファイル(.keepパックとクラフトパックを除く)を削除します。その後、これらのパックファイルへのすべての参照を削除するためにMIDXファイルを書き換えます。

このモードは増分MIDXファイルとは互換性がありません。
repack

マルチパックインデックスによって参照される小さなパックファイル内のオブジェクトを含む新しいパックファイルを作成します。--batch-size=<size>引数で与えられたサイズがゼロの場合、マルチパックインデックスによって参照されるすべてのオブジェクトを含むパックを作成します。ゼロ以外のバッチサイズの場合、最も古いものから新しいものへとパックを検査し、マルチパックインデックスによって参照されるパック内のオブジェクトの数を数えて「期待されるサイズ」を計算し、その数をパック内の総オブジェクト数で割ってパックサイズを乗算することでパックファイルを選択します。パックのセットの合計期待サイズが少なくともバッチサイズになるか、すべてのパックファイルが考慮されるまで、期待サイズがバッチサイズ未満のパックを選択します。選択されたパックファイルが1つだけの場合、何もしません。新しいパックファイルが作成された場合、マルチパックインデックスを書き換えて新しいパックファイルを参照するようにします。後で実行されるgit multi-pack-index expireによって、このバッチの一部であったパックファイルが削除されます。

repack.packKeptObjectsfalseの場合、関連する.keepファイルを持つパックファイルは、再パックするバッチとして選択されません。

このモードは増分MIDXファイルとは互換性がありません。

  • 現在の.gitディレクトリ内のパックファイル用のMIDXファイルを作成します。

    $ git multi-pack-index write
  • 現在の.gitディレクトリ内のパックファイルと、対応するビットマップを持つMIDXファイルを作成します。

    $ git multi-pack-index write --preferred-pack=<pack> --bitmap
  • 代替オブジェクトストア内のパックファイル用のMIDXファイルを作成します。

    $ git multi-pack-index --object-dir <alt> write
  • 現在の.gitディレクトリ内のパックファイル用のMIDXファイルを検証します。

    $ git multi-pack-index verify

関連項目

マルチパックインデックス機能とそのファイル形式の詳細については、The Multi-Pack-Index Design Documentおよびgitformat-pack[5]を参照してください。

GIT

git[1]スイートの一部

scroll-to-top