p4 revert

作業状態のファイルに対する変更内容を破棄する場合や、作業状態のストリーム仕様を元に戻す場合に、このコマンドを使用します。

構文規則

p4 [g-opts] revert [-a -n -k -w] [-c change] [-C client] [--remote=remote] file ...
p4 [g-opts] revert [-a -n -k -w] [-Si] [-c change] [-C client] [--remote=remote] file ...
p4 [g-opts] revert -So [-c change]

説明

p4 revertは、作業中のファイルに加えられた変更を廃棄し、p4 syncで ディポから最後に同期させたリビジョンに戻します。 また、元に戻したファイルを関連する作業中チェンジリストから削除します。 管理者は-Cオプションを使用することにより、他のユーザの作業状態の ファイルを元に戻すことができます。

  • p4 deleteにより作業状態にしたファイルを元に戻すと、 そのファイルはクライアントワークスペース内に復元されます。
  • p4 addにより作業状態にしたファイルを元に戻すと、 Helixサーバはクライアントワークスペースのファイルには何も行いません。
  • p4 integrateにより作業状態にしたファイルを元に戻すと、 Helixサーバはクライアントワークスペースからそのファイルを削除します。
  • p4 moveにより作業状態にしたファイルを元に戻すと、 move/add目的で作業状態にしたファイルのみが元に戻ります。

ホスト名は暗示され、ユーザ名は必要ありません。

ストリームとp4 revertコマンド

-Siオプションと-Soオプションを指定すると、作業状態のストリーム仕様が元の状態に戻ります。デフォルトの場合、作業状態のストリーム仕様が元に戻されることはありません。

ファイルを処理する場合のオプション

-a

作業状態になってから(内容またはファイルタイプが)変更されていないファイルのみを元に戻します。

元に戻されるのは、次のクライアントリビジョンを持っているファイルのみになります。

  • 編集目的のため作業状態にあるが、内容とファイルタイプが未変更であるファイル。
  • p4 integrateにより反映の目的で作業状態になったが、 p4 resolveによる衝突解決がまだ行われていないファイル。
  • 追加目的のため作業状態にあるが、ワークスペースから失われているファイル。

    追加目的のため作業状態にあり、ワークスペースから失われているが、 作業中の反映があるファイルは、元に戻りません。

-c change

指定されたチェンジリスト内のファイルのみを元に戻します。

クライアントワークスペース内の指定された変更にあるすべてのファイルを元に戻します。

$ p4 revert -c 345627 "//..."

-C client

他のユーザの作業状態のファイルを元に戻します。このオプションの注意点を以下に示します。

  • このオプションを指定するには、admin以上の権限が必要になります。

  • このオプションを指定すると、-kオプション、-Hオプション、-uオプションを指定した場合と同じ動作になります。 -H-uはグローバルオプションです。

クライアントワークスペース内の単一のファイルを元に戻します。

$ p4 revert -C bruno_ws //depot/www/dev/Jam.html

クライアントワークスペース内のすべてのファイルを元に戻します。

$ p4 revert -C bruno_ws //...

このオプションは、エッジサーバで保持されている排他的ロックの解除にも役立ちます。 その場合、コマンドでクライアントが存在するエッジサーバを示す必要があります。 以下に例を示します。

$ p4 revert -C SusanClient //depot/src/x.cc

古いユーザのワークスペースを削除する場合も、このオプションを使用すると便利です。 削除を行う前に、ワークスペース内の作業中のファイルを元に戻す必要があります。

-k

ワークスペースファイルを保存します。 ファイルはチェンジリストから削除され、 現在は作業状態にないことがHelixサーバに記録されますが、 クライアントワークスペース内では変更されません。

-n

実際に元に戻す操作は実行せず、元に戻した場合の結果を一覧表示します。

このオプションにより、事前に元に戻したときの結果を確認できます。

--remote=remote

個人サーバのファイルを元に戻します。また、ファイルタイプが+lの場合、 そのファイルのクローン元となった共有サーバ上で、 そのファイルに対する グローバルな排他的ロックを解除します。

詳細については、『分散バージョニング環境におけるHelix Coreサーバの利用』の「フェッチとプッシュ」の章のセクション、 排他的ロックのサポートに関する説明を参照してください。

詳細については、『分散バージョニング環境におけるHelix Coreサーバの利用』の 「フェッチとプッシュ」の章のセクション、 「個人サーバでの排他的ロックのサポート」に関する説明を参照してください。

-w

add目的で作業状態になっているファイルは、 元に戻されるとワークスペースから削除(ワイプ)されます。

g-opts

グローバルオプション」を参照してください。

ストリームを処理する場合のオプション

-Si

指定したファイルリストを元に戻す場合に、作業状態のストリーム仕様も元に戻されます。

-So

作業状態のストリーム仕様のみが元に戻されます。ファイルリストが元に戻ることはありません。

使用上の注意点

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

いいえ

いいえ

list

-Cオプションを指定する場合はadmin権限

  • p4 revert このコマンドは通常、ファイル引数を必要とするという点で、 他のほとんどのHelixサーバコマンドとは異なります。 コマンドラインのファイル引数とクライアントビューの共通部分にあるファイルが 元に戻されます。

    -aオプションを使用している場合、ファイル引数を指定する必要はありません。

  • edit目的で作業状態にしたファイルを元に戻すと、 ファイルが作業状態にされてからユーザが加えたすべての変更が上書きされます。 p4 revertを実行する前に、p4 revert -nによって結果を確認するとより安全です。

ストリーム仕様を元に戻す場合のコマンド例

p4 revert -Si ... 現在の作業中ストリーム仕様を含め、デフォルトのチェンジリストに含まれている すべてを元に戻します。
p4 revert -So デフォルトのチェンジリストに含まれている現在の作業中ストリーム仕様のみを元に戻します。
p4 revert -Si -c 987654321 ... 指定された番号のチェンジリストに含まれているすべてを元に戻します。
p4 revert -So -c 987654321 指定された番号のチェンジリストに含まれている作業中ストリーム仕様のみを元に戻します。
p4 revert -Si foo デフォルトのチェンジリストに含まれている現在の作業中ストリーム仕様と作業中ファイルを元に戻します。
p4 revert -Si -c 987654321 foo 指定された番号のチェンジリストに含まれている現在の作業中ストリーム仕様と作業中ファイルを元に戻します。

p4 revert foo

デフォルトのチェンジリストに含まれているファイルのみを元に戻します(ストリーム仕様は除外されます)。

p4 revert -c 987654321 foo

指定された番号のチェンジリストに含まれているファイルのみを元に戻します(ストリーム仕様は除外されます)。

関連コマンド

ディポに追加するファイルを作業状態にする

p4 add

削除するファイルを作業状態にする

p4 delete

すべての作業状態のファイルをディポにコピーする

p4 submit

ディポからクライアントワークスペースへファイルを読み込む

p4 sync

すべての作業状態のファイルを一覧表示する

p4 opened

Helixサーバがユーザのファイルであると判断したファイルを、 クライアントワークスペースと強制的に同期させる。 その際、作業状態にない書き込み可能なファイルはすべて上書きされる。

p4 sync -f