2011-10-13 44 views
39

我們的一個隊員(位於不同的區域)已經擱置了與修改1234如何查看擱置的P4更改?

在P4的變化現在,如果我想看看被修改哪些文件SNF什麼變化,我該怎麼辦呢?

我應該用什麼P4命令來查看我們團隊成員所做的更改?

回答

45

p4 describe -S 1234應該訣竅,看the documentation on describe

要查看文件內容,您將unshelve將文件放入您的工作空間(假設您的同事正在處理同一項目的工作空間)。

創建p4 change(例如,在結果2345)新(空)變更表,然後使用p4 unshelvedocu)修改後的文件到您的工作空間:

p4 unshelve -s 1234 -c 2345 

如果你不想修改你的工作空間中的文件不再,你可以p4 revert -c 2345他們。

+0

謝謝!如果我想下載這些文件(在我的P4工作區中有擱置的更改,那麼命令是什麼?) – Mike

+2

您可以使用P4V作爲 – cristobalito

+1

感謝您提供有用的答案。相當惱人的是,需要一個新參數才能查看擱置 –

30

使用GUI,轉到待定並刪除除用戶以外的所有過濾器,您將放置其他開發人員的ID。從那裏你應該可以看到她的Changelists,包括那些已經擱置的文件。右鍵單擊Shelved Files圖標並選擇Unshelve。您將必須有一個工作空間處於活動狀態,其中包含您試圖取消擱置的文件。

+22

它實際上更容易點擊Ctrl-G並輸入更改列表號 – ModdyFire

1

如果你想看到只有一個變更中的文件(不管它是一個擱置,等待或提交CL)的列表中,而無需額外的數據,用grep結果:

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

'p4 describe -sS'用少一點麻煩就可以完成這項工作,小寫's'限制顯示差異 – user1167662

+0

-s仍然顯示更改列表描述這個答案是最好的給出「如果你想看**只有文件列表**」 – Timbo

+0

用這種方法你仍然需要使用-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限制包含文件差異的輸出。

+1

-sS是這裏的重要信息! – syam

1

在P4V用戶界面,選擇

Search - > Go To 

然後選擇更改列表(在你的情況「待處理的變更表」)的類型,輸入的變更表號,然後單擊「確定」。