web-dev-qa-db-ja.com

Shelved P4 Changesを表示する方法は?

チームメンバーの1人(異なる地域にいる)がP4の変更をチェンジリスト1234で保留しました。

今、どのファイルが変更されているかを見たい場合、どのような変更がありますか?これを行うにはどうすればよいですか?

チームメンバーが行った変更を確認するために使用するP4コマンドは何ですか?

50
Mike

p4 describe -S 1234がトリックになります。 describeのドキュメント を参照してください。

ファイルの内容を表示するには、ファイルをワークスペースにunshelveします(同僚が取り組んでいる同じプロジェクトのワークスペースがあると仮定します)。

p4 change(結果は2345など)で新しい(空の)チェンジリストを作成し、p4 unshelve(- doc )を使用して、変更されたファイルをワークスペースに取得します。

p4 unshelve -s 1234 -c 2345

ワークスペースで変更されたファイルが不要になった場合は、p4 revert -c 2345できます。

55
jhwist

GUIを使用して、「保留」に進み、ユーザー以外のすべてのフィルターを削除します。ここには、他の開発者のIDを入力します。そこから、ファイルを棚に置いたものを含む彼女のチェンジリストを見ることができるはずです。 Shelved Filesアイコンを右クリックして、Unshelveを選択します。棚上げを解除しようとしているファイルを含むワークスペースをアクティブにする必要があります。

32
Matthew White

UIクライアントを使用して、Ctrl + Gを押します。ダイアログウィンドウが表示されます。コンボボックスでチェンジリストを選択し、チェンジリストの番号を入力します。

11
Sergey Morozov

チェンジリスト123456が保留中のチェンジリストであると仮定しましょう。前述の答えとして、ファイルをリストする方法は、そのチェンジリストに関連付けられているp4 describe -s <changelist>コマンドを使用する方法です。そのようです:

$ p4 describe -s 123456
Change 123456 by john.doe@JohnsBranch on 2013/10/24 15:38:10 *pending*

    [Shelving my changes for Jane.]
    Fix memory corruption caused by uninitialized pointer.

Affected files ...

... //depot/branches/JohnsBranch/kernel/vm/pageutils.c#1 edit

問題のファイルがわかったら、対応するワークスペースなしでファイルを比較する方法がいくつかあります。方法#1はp4 printを使用することです:

$ p4 print -q //depot/branches/JohnsBranch/kernel/vm/pageutils.c#1       > /tmp/old
$ p4 print -q //depot/branches/JohnsBranch/kernel/vm/pageutils.c@=123456 > /tmp/new
$ diff /tmp/old /tmp/new    # Or use kdiff3, tkdiff, etc.
          ...
  <diff output here>

もう1つの方法は、p4 diff2を使用することです。

$ p4 diff2 //depot/branches/JohnsBranch/kernel/vm/pageutils.c#1 //depot/branches/JohnsBranch/kernel/vm/pageutils.c@=123456
          ...
  <diff output here based on Perforce server's diff algorithm>

どちらの方法も、選択したスクリプト言語に簡単に組み込むことができます。

8
troydj

jhwistのソリューションは、ファイルの差分を表示する場合に適しています。

保留されたファイルのみを表示する場合は、p4 describe -sS 1234

小文字のsは、出力にファイル差分を含めることを制限します。

5
user1167662

ファイルの実際のコンテンツを表示する場合は、次を使用できます。

p4 print <file>@=<shelved_change>

@ =は保留された変更を確認することを意味し、@は変更を確認することを意味します。

2
NateW

P4V UIで、選択します

Search - > Go To

次に、チェンジリストのタイプを選択し(あなたのケースでは「保留中のチェンジリスト」)、チェンジリスト番号を入力して「OK」をクリックします。

2

ファイルのリストのみ ChangeList内(シェルフ、保留中、または送信済みCL)で、追加データなしで表示したい場合、結果をgrepします。

p4 describe -S 12345 | grep -oP '(?=//).*(?=#)'
1
Noam Manos