p4 diff2 (グラフ)

2つのレポジトリパスの内容を比較するdiffユーティリティです。(ワークスペースとレポジトリの内容の比較については、「p4 diff (グラフ)」を参照してください)

構文規則

            p4 diff2 [options] fromFile[@sha1|@reference] tofile[@sha1|@reference]
        

説明

p4 diff2をサーバで実行すると、特定のグラフリポジトリファイルセット(「反映元」)と別のグラフリポジトリファイルセット(「反映先」)が比較されます。反映元ファイルセットと反映先ファイルセットは、「p4 diff2」コマンドラインで指定できます。

fromFiletoFileには、@sha1指定子または@reference指定子を含めることができます。デフォルトでは、最新リビジョンが比較されます。

このコマンドは比較対象の各ファイルの前に指定します。

比較対象の各ファイルは次の形式のヘッダ行で指定します。

==== source#rev (type) - target#rev (type) ==== summary

反映元ファイルまたは反映先ファイルが<none>と表示される場合は、指定した名前のファイルが存在しないか、比較対象のファイルのリファレンスが存在しないことを意味します。概要を示すステータスは次のようになります。identicalはファイルの内容とタイプが同じであることを意味し、typesはファイルの内容は同じだがタイプが異なることを意味し、contentは内容が異なることを意味します。

オプション

-doptions

標準的なUNIXの差分オプションの1つで差分ルーチンを実行します。

-Od

出力を差分のあるファイルのみに限定します。

-q

差分比較の出力を最低限に抑えます。 file1file2がまったく同じである場合は、 出力として「file1 - no differing files」だけが表示されます。

-u

追加行と削除行を表示してunified出力形式を生成し、 データ内容をpatch(1)ユーティリティに対応させます。 相違箇所のあるファイルのみが含まれます。 ファイル名と日付は、 Helixサーバ構文のままになります。

  • p4 diff2がサポートしている差分オプションは、次のとおりです。

    オプション 名前

    -dn

    RCS出力形式。ファイルに対して行われた追加および削除と、 関連した行範囲を表示します。

    -dc[num]

    context出力形式。変更された行番号の範囲と、その周辺の num行分を表示します。

    -ds

    summary出力形式。追加、削除および変更されたまとまり(チャンク)と 行の数を表示します。

    -du[num]

    unified出力形式。追加および削除された行を、 patch(1)ユーティリティに適した内容で num行分表示します。

    -dl

    差分を発見したときに行末識別(CR/LF)を無視します。

    -db

    空白文字の変更を無視します。このオプションは-dlを意味します。

    -dw

    空白文字を完全に無視します。このオプションは-dlを意味します。

  • 差分プログラムに複数のオプションを渡す場合は、次の例のように それらのオプションをまとめます。以下に例を示します。

    $ p4 diff2 -dub file1 file2

    この例では、空白文字の変更を無視するunified形式の差分が指定されます。

  • patch(1)を使用するために-duオプションで生成される unified形式のヘッダ行では、差分ファイルを Helixサーバシンタックスで表示します。 ローカルシンタックスではありません。
  • p4 diff2を使用して、binaryファイルの差分比較を実行したとします。

    ... files differ ...

    一致しない場合は、上記の行が表示されます。

  • -b branch[[fromfile[rev]]tofile[rev]]オプションを使用すると、 fromfileのファイルパターンとtofileのリビジョン、 またはfromfileのリビジョンとtofileのファイルパターンを指定できるようになります。
  • ファイル内のRCSキーワードはp4 diff2によって拡張されません。

p4 diff2 //repo/main/src/...@00662f4 //repo/main/src/...@refs/heads/bugfix

@00662f4はSHA-1コミットを表し、refs/heads/bugfixはブランチを表します。出力には、現在ブランチに存在するファイルと、コミットに存在するファイルの違いが表示されることがあります。

>==== //repo/main/src/chat.c#1e7637e (text) - //repo/main/src/chat.c#1e7637e (text) ==== identical
==== //repo/main/src/db.c#6950848 (text) - //repo/main/src/db.c#2ab62af (text) ==== content
2,3d1
< Additional database code.
< Add Btree code
==== //repo/main/src/main.c#184e90a (text) - //repo/main/src/main.c#5a8f6ff (text) ==== content
3d2
< Enable additional database code.

#numberはSHA-1コミットに関連付けられているファイルのblob SHA-1を表しています。