Helix Core P4コマンドリファレンス (2019.1)

p4 unload

ワークスペース、ラベル、またはタスクストリームを、アンロードディポまたはフラットファイルにアンロードします。

構文

p4 [g-opts] unload [-f -L -p -z] [-c client | -l label | -s stream]
p4 [g-opts] unload [-f -L -z] [-a | -al | -ac] [-d date | -u user]

説明

p4 unloadコマンドの用途としては、以下の2つがあります。

使用頻度の低いメタデータを、「Helix Coreサーバ db.*」ファイルからアンロードディポ内の一連のフラットファイルに転送する クライアント、ラベル、またはタスクストリームを、クライアント上のフラットファイルにアンロードする

多くの場合、Helixサーバのレポートコマンドは目的のデータの上位集合を取得します。その後、ユーザは自動または手動で後処理を行って、出力内の不要な行を破棄できます。 例えば、p4 clientsコマンド(引数なしで実行した場合)は、現在の従業員およびこれまで組織に所属していたすべての従業員(数年前に退職した従業員を含む)によって作成された、すべてのクライアントワークスペースの名前を返します。

メタデータをアンロードすると、Helixサーバに必要とされる作業データのサイズが小さくなります。 過去のメタデータが大量に存在する大規模なサイトの場合、メタデータをアンロードすると、パフォーマンスが大幅に向上し、コマンドラインでクエリを実行した場合の出力件数と、P4Vなどのアプリケーションで表示される情報量が減少する可能性があります。

p4 clientsp4 labelsp4 filesp4 sizesp4 fstatなどのHelixサーバコマンドは、アンロードされたメタデータを無視します。

アンロードされたメタデータを表示するには、これらのコマンドで-Uオプションを指定します。

このオプションは、別のデータベースにクライアントを読み込む場合や、クライアントのプライベートバックアップを作成する場合に使用すると便利です。 フラットファイルでは、標準のジャーナル形式が使用されます。 コマンドの実行後にクライアント、ラベル、タスクストリームは完全に読み込まれた状態を維持します。

-oオプションを指定する必要があります。

-cおよび-lオプションを使用すると、特定のクライアントワークスペースまたはラベルをアンロードできます。 ユーザは自分が所有するワークスペースまたはラベルのみをアンロードできます。 管理者は-fオプションを使用して、他のユーザが所有するワークスペースやラベルをアンロードできます。

ワークスペースを1つのエッジサーバから別のエッジサーバに移動するためにワークスペースをアンロードする必要はありません。p4 reloadコマンドを実行すると、ワークスペースを新しいエッジサーバにリロードする前に、指定したワークスペースが自動的にアンロードされます。

-a-al、または-acオプションを使用すると、すべての指定されたラベルおよび/またはクライアントワークスペースがアンロード対象となります。 -oオプションも使用している場合は、これらのオプションを使用できません。

-d dateおよび/または-u userオプションを使用すると、アンロード操作の対象は特定の日付dateよりも古いか、特定のユーザuserが所有しているか、またはその両条件に該当するラベルおよび/またはワークスペースに限定されます。

-Lオプションを使用すると、ロックされたワークスペースおよび/またはラベルがアンロードされます。 デフォルトでは、ロックが解除されたラベルまたはワークスペースのみがアンロードされます。

ワークスペースのアクセス日付は、次のタイミングで更新されます。

注意

p4 clientを実行してもアクセス時刻は更新されません。クライアント仕様を編集して保存した場合、クライアントの更新時刻のみが更新されます。

ラベルのアクセス日付は、次のタイミングで更新されます。

  • ラベルを直接参照するコマンドによってラベルが使用されたとき
  • ラベルが@labelnameの形式でリビジョン指定子に使用されたとき

デフォルトでは、アンロードディポ内のデータは圧縮されません。 圧縮形式で保存するには、-zを使用します。 多くの場合、アンロードされたメタデータは大幅に圧縮可能です。この傾向は連続稼動のビルド環境で特に強くなります。ビルドで1回使用した後にほとんどアクセスされないワークスペースやラベルが何百万個と存在するからです。

オプション

-a

該当するすべてのクライアントワークスペースとラベルをアンロードします。-d-u、または-d-uの両方のオプションを必要とします。 このオプションはタスクストリームには影響しません。

-ac

クライアントワークスペースをアンロードします。-d-u、または-d-uの両方のオプションを必要とします。

-al

ラベルをアンロードします。-d-u、または-d-uの両方のオプションを必要とします。

-c client

指定されたクライアントワークスペースのメタデータをdb.have(および関連テーブル)からアンロードし、それをアンロードディポに格納します。

-d date

指定された日付よりも古いメタデータをアンロードします。

-f

強制オプション。管理者は他のユーザが所有するワークスペース、ラベル、またはタスクストリームのアンロードが可能です。

-l label

指定されたラベルをdb.label(および関連テーブル)からアンロードし、それをアンロードディポに格納します。

-L

lockedされたワークスペース、ラベル、またはタスクストリームをアンロードします。

-p

アンロードされる特定のクライアントに属する、昇格されていないシェルフを昇格させます。 他のエッジサーバからアクセスできる場合は保留状態がコミットサーバに昇格されます。

-s stream

指定されたタスクストリームをアンロードします。 streamtaskタイプである必要があります。

-u user

指定されたユーザが所有するメタデータをアンロードします。

-z

アンロードされたワークスペース、ラベル、またはタスクストリームを圧縮形式で保存します。

g-opts

詳細については、「グローバルオプション」を参照してください。

使用上の留意点

ファイル引数にリビジョン指定子を使えるか? ファイル引数にリビジョン範囲を使えるか? 最低限必要なアクセスレベル

使用不可

使用不可

write
admin

  • ワークスペースまたはラベルのアンロードを行うには、ユーザがワークスペースの所有リストにあるすべてのファイルおよび/またはラベルによってタグ付けされているファイルをスキャンすることが可能でなければなりません。 管理者は(p4 groupフォームにおいて)MaxScanRowsおよびMaxResultsを十分な大きさの値に設定して、ユーザがp4 unloadまたはp4 reloadの操作にサポートを要求しなくて済むようにする必要があります。

関連コマンド

アンロードディポからデータをリロードする。

p4 reload