これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド git-pack-objects です。
プログラム:
NAME
git-pack-objects - オブジェクトのパックされたアーカイブを作成する
SYNOPSIS
git パックオブジェクト [-q | --進捗状況 | --all-progress] [--all-progress-implied]
[--no-reuse-delta] [--delta-base-offset] [--non-empty]
[--local] [--incremental] [--window= ] [--深さ= 】
[--revs [--解凍済み | --all]] [--stdout | ベース名]
[--shallow] [--keep-true-parents] < オブジェクトリスト
DESCRIPTION
標準入力からオブジェクトのリストを読み取り、指定されたパックされたアーカイブを書き込みます
ベース名、または標準出力に送信されます。
パックされたアーカイブは、XNUMX つのリポジトリ間で一連のオブジェクトを転送する効率的な方法です
アクセス効率の高いアーカイブ形式も備えています。 パックされたアーカイブでは、オブジェクトは次のいずれかになります。
圧縮された全体として、または他のオブジェクトとの差分として保存されます。 後者は
デルタと呼ばれることが多い。
パックされたアーカイブ形式 (.pack) は自己完結型になるように設計されているため、
追加情報なしで開梱されました。 したがって、デルタが依存する各オブジェクトは、
パック内に存在する必要があります。
パック インデックス ファイル (.idx) は、パック内のオブジェクトに高速かつランダムにアクセスするために生成されます。
インデックス ファイル (.idx) とパックされたアーカイブ (.pack) の両方を Pack/ に配置します。
$GIT_OBJECT_DIRECTORY のサブディレクトリ (または、
$GIT_ALTERNATE_OBJECT_DIRECTORIES) により、Git がパック アーカイブから読み取ることができるようになります。
この git unpack-オブジェクト コマンドは圧縮されたアーカイブを読み取り、オブジェクトを展開できます
「XNUMX ファイル XNUMX オブジェクト」形式でパックに含まれます。 これは通常、
効率的なネットワーク転送のためにパックがオンザフライで作成されるときのスマートプルコマンド
彼らの仲間。
OPTIONS
ベース名
次を使用して、ファイルのペア (.pack と .idx) に書き込みます。 名前を決める
作成されたファイルの。 このオプションを使用すると、XNUMX つのファイルは次のように書き込まれます。
- .{pack,idx} ファイル。 はパックの内容に基づくハッシュであり、
コマンドの標準出力に書き込まれます。
--stdout
パックの内容 (.pack ファイルに書き込まれるもの) を
標準出力。
--rev
個々のオブジェクトではなく、標準入力からリビジョン引数を読み取ります
名前。 リビジョン引数は次と同じ方法で処理されます。 git リビジョンリスト
--objects フラグは、コミット引数を使用して、出力するオブジェクトのリストを作成します。 の
結果のリスト上のオブジェクトがパックされます。 リビジョンに加えて、--not または --shallow
ラインでも受け付けております。
-- 開梱
これは --revs を意味します。 から読み取られたリビジョン引数のリストを処理するとき、
標準入力では、パックされるオブジェクトをまだパックされていないものに制限します。
- すべて
これは --revs を意味します。 リビジョン引数のリストに加えて、
標準入力では、refs/ の下にあるすべての ref が含められるように指定されているかのように見せかけます。
---タグを含める
参照するオブジェクトが
結果のパックファイル。 これは、新しいタグをネイティブ Git クライアントに送信するのに役立ちます。
--ウィンドウ= 、--深さ=
これら XNUMX つのオプションは、パックに含まれるオブジェクトがデルタを使用して格納される方法に影響します。
圧縮。 オブジェクトは、まずタイプ、サイズ、およびオプションで内部的に並べ替えられます。
名前を取得し、--window 内の他のオブジェクトと比較して、デルタを使用しているかどうかを確認します。
圧縮するとスペースが節約されます。 -- Depth は最大デルタ深度を制限します。 深くしすぎてしまう
デルタデータを適用する必要があるため、アンパッカー側のパフォーマンスに影響します。
必要なオブジェクトに到達するまでに何度も。 --window のデフォルト値は 10 です。
そして -- 深さは 50 です。
--ウィンドウメモリ=
このオプションは、--window に加えて追加の制限を提供します。 ウィンドウのサイズは
以上を消費しないように動的にスケールダウンします。 メモリ内のバイト数。 これは
大小のオブジェクトが混在するリポジトリでメモリ不足にならないようにするのに役立ちます。
大きな窓が付いていますが、それでも大きな窓を利用することができます。
より小さな物体。 サイズの末尾に「k」、「m」、または「g」を付けることができます。 --ウィンドウメモリ=0
メモリ使用量を無制限にします (これがデフォルトです)。
--最大パックサイズ=
各出力パック ファイルの最大サイズ。 サイズの末尾に「k」、「m」、または「g」を付けることができます。
許可される最小サイズは 1 MiB に制限されています。 指定した場合、複数のパックファイルを含めることができます。
作成した。 構成変数pack.packSizeLimitが指定されていない限り、デフォルトは無制限です。
設定します。
--名誉パックキープ
このフラグにより、.keep ファイルを持つローカル パック内にすでに存在するオブジェクトが
たとえパックされていたとしても無視されます。
- 増分
このフラグにより、パック内にすでに存在するオブジェクトは無視されます。
それ以外の場合は梱包されています。
- ローカル
このフラグにより、代替オブジェクト ストアから借用されたオブジェクトが
たとえパックされていたとしても無視されます。
--空ではない
圧縮されたアーカイブは、少なくとも XNUMX つのオブジェクトが含まれる場合にのみ作成します。
- 進捗
進行状況は、デフォルトで標準エラー ストリームで報告されます。
-q が指定されていない限り、端末に接続されます。 このフラグは進行状況を強制します
標準エラーストリームが端末に向けられていない場合。
--すべての進行状況
--stdout が指定されている場合、オブジェクト数のカウント中に進行状況レポートが表示されます。
圧縮フェーズでは実行されますが、書き込みフェーズでは禁止されます。 その理由は、
場合によっては、出力ストリームが別のコマンドに直接リンクされている場合があります。
受信パック データを処理するときに、独自の進行状況を表示します。 この旗は
--progress と同様ですが、書き込みフェーズの進行状況レポートも強制する点が異なります。
--stdout が使用されている場合でも。
--すべての進捗状況を暗黙的に示す
これは、進行状況表示がアクティブ化されるたびに --all-progress を暗黙的に指定するために使用されます。 ようではない
--all-progress このフラグは、実際にはそれ自体で進行状況の表示を強制しません。
-q
このフラグにより、コマンドは標準エラー ストリームで進行状況を報告しなくなります。
--再利用なしデルタ
既存のパックがあるリポジトリにパックされたアーカイブを作成する場合、コマンド
既存のデルタを再利用します。 これにより、パックがわずかに最適ではなくなる場合があります。 これ
flag は、既存のデルタを再利用せず、最初から計算するようにコマンドに指示します。
--no-reuse-object
このフラグは、既存のオブジェクト データをまったく再利用しないようにコマンドに指示します。
deltified オブジェクト、すべての再圧縮を強制します。 これは --no-reuse-delta を意味します。
別の圧縮を大規模に適用するというあいまいな場合にのみ役立ちます。
パックされたデータのレベルが必要です。
--圧縮=
生成されたパック内の新しく圧縮されたデータの圧縮レベルを指定します。 そうでない場合
指定すると、パックの圧縮レベルは最初にpack.compressionによって決定され、次にpack.compressionによって決定されます。
core.compression が設定され、どちらも設定されていない場合、デフォルトは zlib のデフォルトである -1 になります。 追加
--no-reuse-object すべてのデータに均一の圧縮レベルを強制する場合
ソースは重要です。
- 薄い
送信者と受信者間の共通オブジェクトを省略して「薄い」パックを作成します。
ネットワーク転送を減らすため。 このオプションは、以下と組み合わせた場合にのみ意味を持ちます。
--stdout。
注: シン パックは、必要なオブジェクトを省略することにより、パックされたアーカイブ形式に違反します。
したがって、自己完結型にしない限り、Git で使用することはできません。 git インデックスパックを使用する
--fix-thin (を参照) git-インデックスパック(1)) 自己完結型のプロパティを復元します。
- 浅い
浅いリポジトリを使用してクライアントに提供されるパックを最適化します。 これ
オプションを --thin と組み合わせると、速度を犠牲にしてパックを小さくすることができます。
--デルタベースオフセット
パックされたアーカイブは、デルタの基本オブジェクトを 20 バイトのオブジェクトとして表現できます。
名前またはストリーム内のオフセットとして使用できますが、Git の古いバージョンでは理解できません。
後者。 デフォルトでは、 git パックオブジェクト より良い目的のために前の形式のみを使用します
互換性。 このオプションを使用すると、コマンドで後者の形式を使用できるようになります。
コンパクトさ。 デルタ チェーンの平均長に応じて、このオプションは通常、
結果のパックファイルが 3 ~ 5 パーセント縮小されます。
注: git gc などの Porcelain コマンド (「 git-gc(1))、git repack (を参照) ギット-
再梱包する(1)) 最新の Git では、オブジェクトを
リポジトリをパック ファイルに変換します。 git バンドルも同様です (「 git バンドル(1)) を作成するとき
バンドル。
--スレッド=
最適なデルタ一致を検索するときに生成するスレッドの数を指定します。 これ
パックオブジェクトを pthread でコンパイルする必要があります。それ以外の場合、このオプションは無視されます
警告付きで。 これは、マルチプロセッサ マシンでのパッキング時間を短縮することを目的としています。 の
ただし、デルタ検索ウィンドウに必要なメモリ量は、
スレッドの数。 0 を指定すると、Git は CPU の数を自動検出し、
それに応じてスレッド数を設定します。
--index-version= [、 ]
これはテスト スイートのみで使用することを目的としています。 バージョンを強制することができます
生成されたパック インデックス、およびその上にあるオブジェクトに 64 ビット インデックス エントリを強制する
指定されたオフセット。
--keep-true-parents
このオプションを使用すると、グラフトによって隠されている親もパックされます。
onworks.net サービスを使用してオンラインで git-pack-objects を使用する