p4 diff
ワークスペースとディポの内容を比較するdiffユーティリティです。 (2つのディポパスの比較については、p4 diff2を参照してください。)
構文
p4 [g-opts] diff [-doptions] [-f -t -Od] [-m max] [-soptions] [file[rev] ...]
説明
p4 diffは、ユーザのワークステーション上で差分プログラムを実行し、ワークスペース内のファイルを、ディポに保存されているリビジョンと比較します。
このコマンドはファイル引数を付けることができます。引数にはリビジョン指定子を含めることができます。
- 引数にリビジョン指定子が含まれていると、クライアントと指定されたリビジョンとの差分を調べることができます。
- 引数にリビジョン指定子が含まれていない場合、クライアントワークスペースのファイルは、現在の編集元のリビジョン(通常は最新リビジョン)と比較されます。
- いずれの場合でも、クライアントのファイルはコマンド
edit
で作業状態にされていなければなりません。または、クライアントのファイルが最後に同期したリビジョン以外のリビジョンに対して、この比較が行われなければなりません。
ファイル引数にワイルドカードが含まれている場合は、そのファイルパターンに適合するすべての作業状態のファイルについて差分を調べられます。
ファイル引数が与えられていない場合には、すべての作業状態のファイルについてディポの対応するファイルとの差分を調べられます。
デフォルトでは、p4
コマンドラインアプリケーションに組み込まれている差分ルーチンがワークステーションで実行されます。 P4DIFF
環境変数で外部diffプログラムを指定することにより、ワークステーションで外部diffプログラムが実行されるようになります。
オプション
|
オプションを基本差分ルーチンに渡します(詳しくは使用上の留意点を参照)。 |
|
クライアントファイルがコマンド |
|
|
|
出力を差分のあるファイルのみに限定します。 |
|
表示オプションを基本差分ルーチンに渡します(詳しくは使用上の留意点を参照)。 |
|
ファイルが |
|
詳細については、「グローバルオプション」を参照してください。 |
使用上の留意点
ファイル引数にリビジョン指定子を使えるか? | ファイル引数にリビジョン範囲を使えるか? | 最低限必要なアクセスレベル |
---|---|---|
使用可 |
使用不可 |
|
-
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形式の差分が指定されます。
-du
で使用するためにpatch(1)
オプションで生成されるunified形式の差分のヘッダ行には、ローカルシンタックスではなくHelixサーバシンタックスでファイル名が表示されます。- リビジョンがファイル指定に含まれている場合は、ファイルがチェンジリストで作業状態であるかどうか、またはワークスペースが指定されたリビジョンに同期されているかどうかにかかわらず、
-s
オプションによってファイルが比較されます。
例
|
ファイル |
|
クライアントワークスペースのすべての作業状態のファイルを、2017年5月22日午前0時の時点でディポに保存されていたリビジョンと比較します。 |
|
2017年5月22日午前0時の時点でディポに保存されていたリビジョンと比較するクライアントワークスペースの作業状態のファイルを、最初の10個に制限します。 |
|
ファイル |
|
作業状態にあって変更されていないファイルをすべて取り消します。 この例では、 最初のコマンドは、作業状態にあって変更されていないファイルをすべて表示します。 2番目のコマンドが( (このUNIX版のコマンドではパイプを使用します。 ほとんどのオペレーティングシステムは、上記の動作を連続して実行する同様の仕組みを備えています)。
|
関連コマンド
ディポのファイルの2つのリビジョンを比較する |
|
1つのファイルのすべての内容を参照する |