Git
英語 ▾ トピック ▾ 最新バージョン ▾ 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

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

次のサブコマンドを使用できます

write

新しいMIDXファイルを作成します。writeサブコマンドでは次のオプションを使用できます

--preferred-pack=<pack>

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

--[no-]bitmap

マルチパックビットマップの書き込みを制御します。

--stdin-packs

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

--refs-snapshot=<path>

--bitmapを使用する場合、リパックの前に作成された「refsスナップショット」を含むファイルをオプションで指定します。

参照スナップショットは、通常、リパックの前にgit repackによって作成された、参照先を指すOIDを改行で区切ったものです。行の先頭に+文字を付けることで、そのOIDに対応する参照が「優先」されることを示すことができます(git-config[1]pack.preferBitmapTipsを参照)。

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

--incremental

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

verify

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

expire

MIDXファイルによって追跡されているが、MIDXによって参照されているオブジェクトを持たないパックファイル(.keepパックやcruftパックを除く)を削除します。その後、これらのパックファイルへのすべての参照を削除するために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

参照

マルチパックインデックス設計ドキュメントgitformat-pack[5]を参照して、マルチパックインデックス機能とそのファイル形式の詳細を確認してください。

GIT

git[1]スイートの一部

scroll-to-top