2011-10-13 11 views
39

私たちのチームメンバー(別の地域にある)は、チェンジリスト1234を使用してP4の変更を棚上げしました。シェルフP4の変更を表示する方法は?

変更がどのファイルに反映されているか確認したい場合、どうすればいいですか?

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

答えて

45

p4 describe -S 1234は、the documentation on describeを参照してください。

ファイルの内容を確認するには、unshelveファイルを作業領域に追加します(同僚が作業しているプロジェクトと同じプロジェクトの作業領域があると仮定します)。

p4 unshelve -s 1234 -c 2345 

すると、変更したくない場合は、次の

p4 change(例えば2345での結果)で新しい(空の)チェンジを作成し、その後、p4 unshelvedocu)がワークスペースに変更されたファイルを取得するために使用あなたのワークスペース内のファイルは、もうどれもp4 revert -c 2345です。

+0

ありがとうございます!そして、もし私がそれらのファイルをダウンロードしたいのであれば(P4ワークスペースの変更を棚上げしたものは何でしょうか?) – Mike

+2

そのためにはP4Vを使うだけです – cristobalito

+1

有益な答えありがとうございました。 –

30

GUIを使用して、[保留中]に移動し、ユーザー以外のすべてのフィルタを削除します。ここで、別の開発者のIDを入力します。そこから、シェルルされたファイルを含むチェンジリストを見ることができるはずです。 Shelved Filesアイコンを右クリックし、Unshelveを選択します。アンシェルしようとしているファイルを含むワークスペースをアクティブにする必要があります。

+22

実際にはCtrl-Gを押してチェンジリスト番号を入力するのがより簡単です – ModdyFire

1

あなたは結果をgrepする、余分なデータなし、(それが保留中またはCLを提出し、棚のかどうか)チェンジ内のファイルのリストだけを確認したい場合は、次の

p4 describe -S 12345 | grep -oP '(?=//).*(?=#)' 
+0

'p4 describe -sS'は仕事を少し複雑にしますが、小文字の' s'は差分を表示することを制限します – user1167662

+0

-sはチェンジリストの説明。この回答は、「**ファイルのリストのみを表示したい場合は**」 – Timbo

+0

この方法では、そうでなければ各ファイルは出力に2回現われるので、-sSを使用する必要があります – AliA

6

はのは、そのチェンジを想定してみましょう123456は、問題のシェルビーチェンジリストです。前に述べたように、ファイルをリストする方法は、チェンジリストにはp4 describe -s <changelist>コマンドを使用します。ように:

$ p4 describe -s 123456 
Change 123456 by [email protected] 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/[email protected]=123456 > /tmp/new 
$ diff /tmp/old /tmp/new # Or use kdiff3, tkdiff, etc. 
      ... 
    <diff output here> 

他の方法は、p4 diff2を使用することである。

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

両方の方法は、容易に選択したスクリプト言語に組み込むことができます。

9

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

+0

ありがとう、この作品! –

2

jhwistの解決策は、ファイルの差分を表示したい場合に適しています。

シェルフされたファイルだけを表示する場合は、p4 describe -sS 1234を使用してください。

小文字のsは、ファイルの差分を含む出力を制限します。P4V UIで

+1

-sSはここで重要な情報です! – syam

1

、チェンジリストの種類(あなたのケースで '中チェンジ')を選択し、その後

Search - > Go To 

を選択し、チェンジリスト番号を入力し、 "OK" をクリックします。

関連する問題