p4 diff
ワークスペースとディポの内容を比較するdiffユーティリティです(2つのディポパスの比較方法については、「p4 diff2を参照)。ストリーム仕様を比較することもできます。
構文規則
p4 [g-opts] diff [-doptions] [-f -t -Od] [-m max] [-soptions] [file[rev] ...]
p4 [g-opts] diff [-doptions] -As [streamname[@change]]
説明
p4 diffは、ユーザのワークステーション上で差分プログラムを実行し、 ワークスペース内のファイルを、ディポに保存されているリビジョンと比較します。
このコマンドはファイル引数を付けることができます。引数にはリビジョン指定子を 含めることができます。
- 引数にリビジョン指定子が含まれていると、クライアントと指定されたリビジョンとの 差分を調べることができます。
- 引数にリビジョン指定子が含まれていない場合、クライアントワークスペースのファイルは、 現在の編集元のリビジョン(通常は最新リビジョン)と比較されます。
- いずれの場合でも、クライアントのファイルはコマンド
edit
で 作業状態にされていなければなりません。または、クライアントのファイルが 最後に同期したリビジョン以外のリビジョンに対して、 この比較が行われなければなりません。
ファイル引数にワイルドカードが含まれている場合は、そのファイルパターンに適合する すべての作業状態のファイルについて差分を調べられます。
ファイル引数が与えられていない場合には、すべての作業状態のファイルについて ディポの対応するファイルとの差分を調べられます。
デフォルトでは、p4
コマンドラインアプリケーションに組み込まれている
差分ルーチンがワークステーションで実行されます。P4DIFF
環境変数で外部diffプログラムを指定することにより、
ワークステーションで外部diffプログラムが実行されるようになります。
ストリーム仕様の比較
p4 [g-opts] diff [-doptions] -As [streamname[@change]]と指定すると、プライベート編集されたストリーム仕様を、同じストリーム仕様の別のバージョンと比較することができます。このように指定するには、使用しているクライアントワークスペースが指定のストリームに関連付けられていて、ストリーム仕様が編集用としてプライベートにオープンされている必要があります。
ワークスペースの内容に関するオプション
|
オプションを基本差分ルーチンに渡します(詳しくは、 「使用上の注意点」を参照)。 |
|
クライアントファイルがコマンド |
|
|
|
出力を差分のあるファイルのみに限定します。 |
|
表示オプションを基本差分ルーチンに渡します(詳しくは、 「使用上の注意点」を参照)。 |
|
ファイルが |
|
「グローバルオプション」を参照してください。 |
ストリーム仕様のオプション
|
オプションを基本差分ルーチンに渡します(詳しくは、 「使用上の注意点」を参照)。 |
|
このオプションは、2つのストリーム仕様を指定して相互に比較する場合に使用します。このオプションは、ストリーム名とともに指定することも、特定のチェンジリスト番号のストリーム名とともに指定することもできます。 警告
制限事項: このオプションを使用する場合は、ストリームパスに対するlistアクセス権以上の権限が必要になりますが、プロテクションテーブル内のそれ以外の項目については、マイナス符号(-)を含めてすべて無視されます(通常は、マイナス符号によって操作がブロックされます)。 |
|
「グローバルオプション」を参照してください。 |
使用上の注意点
ファイル引数でリビジョン指定子を使用できるか? | ファイル引数でリビジョン範囲を使用できるか? | 最低限必要なアクセスレベル |
---|---|---|
はい |
いいえ |
-Asオプションを使用する場合は、listアクセス権が必要になります。 |
-
p4 diff
でサポートされている-d
は、次のとおりです。options
オプション 名前 -db
空白文字の変更を無視します。このオプションは
-dl
を意味します。-dc[
num
]context出力形式。変更された行番号の範囲と、 その周辺の
num
行分を表示します。-dl
差分を発見したときに行末識別(CR/LF)を無視します。
-dn
RCS出力形式。ファイルに対して行われた追加および削除と、 関連した行範囲を表示します。
-ds
summary出力形式。追加、削除および変更されたまとまり(チャンク)と 行の数を表示します。
-du[
num
]unified出力形式。追加および削除された行を、
patch(1)
ユーティリティに適した内容でnum
行分表示します。-dw
空白文字を完全に無視します。このオプションは
-dl
を意味します。 -
p4 diff
でサポートされている-s
は、次のとおりです。options
オプション 名前 -sa
ディポに保存されているリビジョンと異なる作業状態のファイルまたは行方不明の 作業状態のファイルの名前のみを表示します。
-sb
衝突解決済みであり、反映目的で作業状態にされているが、 衝突解決後に変更されているファイルの名前のみを表示します。
-sd
クライアントワークスペース内にはないがディポ内にはある、 作業状態にないファイルの名前のみを表示します。
-se
ディポに保存されているリビジョンと異なる、クライアントワークスペース内の 作業状態にないファイルの名前のみを表示します。
-sl
file ...
作業状態でないすべての
file
がディポと比較され、same
、diff
、またはmissing
のステータスと共に 一覧表示されます。-f
と-sl
の両方を使用すると、編集目的で作業状態にされたファイルも比較され、 そのステータスが一覧表示されます。-sr
ディポに保存されているリビジョンと一致する、クライアントワークスペース内の 作業状態にあるファイルの名前のみを表示します。
-
差分プログラムに複数のオプションを渡す場合は、次の例のように それらのオプションをまとめます。以下に例を示します。
p4 diff -dub file
この例では、空白文字の変更を無視するunified形式の差分が指定されます。
patch(1)
で使用するために-du
オプションで生成される unified形式の差分のヘッダ行には、 ローカルシンタックスではなくHelixサーバシンタックスでファイル名が 表示されます。- リビジョンがファイル指定に含まれている場合は、ファイルがチェンジリストで
作業状態であるかどうか、またはワークスペースが指定されたリビジョンに
同期されているかどうかにかかわらず、
-s
オプションによって ファイルが比較されます。
ワークスペースの内容の例
|
ファイル |
|
クライアントワークスペースのすべての作業状態のファイルを、2017年5月22日午前0時の時点で ディポに保存されていたリビジョンと比較します。 |
|
2017年5月22日午前0時の時点でディポに保存されていたリビジョンと比較する クライアントワークスペースの作業状態のファイルを、最初の10個に制限します。 |
|
ファイル |
|
作業状態にあって変更されていないファイルをすべて取り消します。 この例では、 最初のコマンドは、作業状態にあって変更されていないファイルをすべて表示します。
2番目のコマンドが( (このUNIX版のコマンドではパイプを使用します。ほとんどのオペレーティングシステムは、 上記の動作を連続して実行する同様の仕組みを備えています)
|
ストリーム仕様の例
p4 diff -As p4 diff -As myStream p4 diff -As myStream@have |
作業中のストリーム仕様と、 そのストリーム仕様のhaveバージョンとの差分 |
p4 diff -As myStream@head | 作業中のストリーム仕様と、 そのストリーム仕様の最新バージョンとの差分 |
p4 diff -As myStream@1 | 作業中のストリーム仕様と、 そのストリーム仕様の変更1のバージョンとの差分 |
p4 diff -As myStream@=1 | 作業中のストリーム仕様と、 そのストリーム仕様の変更1の保留バージョンとの差分 |
関連コマンド
ディポのファイルの2つのリビジョンを比較する |
|
1つのファイルのすべての内容を参照する |