2009-06-03 70 views
0

我正在研究與Perforce交互的腳本,該腳本除其他內容外還需要能夠理解掛起的更改列表。爲此,我使用'p4 describe'和'p4 opened',這很簡單。例如,文件打開編輯表示像這樣(從P4開通):如何從腳本中檢測Perforce的「重新編輯」使用

//source/stuff/things.h#1 add default change (text) 

不能似乎要弄清楚是如何檢測在用戶已經支文件,然後案件在提交文件之前使用該文件上的'重新打開編輯'命令(相當於在文件上使用「p4 edit」進行分支)。提交集成前,集成文件然後使用「重新打開編輯」也是一樣的。在分支情況下,文件顯示爲「添加」,但沒有指出還有一個分支正在進行(因此上述示例可能是真正的添加或重新打開的分支)。在整合情況下,它顯示爲「編輯」。在這兩種情況下,在我提交更改後,我都可以看到該文件已被分支/集成,但我需要能夠對待處理的更改執行此操作。從理論上講我希望看到這樣的事情,在那裏things.h正在支,並從thangs.h編輯:

//source/stuff/things.h#1 add default change (text) 
    branch from //source/other/thangs.h#42 

有誰知道的一種方式做到這一點?我還會提到,我運行的是舊版本的Perforce(從2004年開始),所以也許在新版本中是可行的,我只需要更新我的軟件。

回答

0

我不認爲這是可能的時候發出「重新編輯」。正如您已經指出的那樣,reopen命令會將文件狀態更改爲不同的內容。我跑了一個本地測試(我正在運行2008.2)。這裏似乎是在Perforce公司上,因爲你的版本文件的添加/編輯狀態報告的方式有些變化,但似乎你正在嘗試做的仍然不能夠

d:\sandbox\ctg_test>p4 integ test.txt test_branch.txt 
//ctg_test/test_branch.txt#1 - branch/sync from //ctg_test/Test.txt#1,#15 

d:\sandbox\ctg_test>p4 opened 
//ctg_test/test_branch.txt#1 - branch default change (text) 

注意,打開的命令現在顯示文件狀態的「分支」而不是添加,我認爲它可能會顯示在您的服務器版本中。但與衆不同的地方:

d:\sandbox\ctg_test>p4 edit test_branch.txt 
//ctg_test/test_branch.txt#1 - reopened for add 

d:\sandbox\ctg_test>p4 opened 
//ctg_test/test_branch.txt#1 - add default change (text) 

我試圖尋找與-ztag選項,看看是否有更多的信息給定:

d:\sandbox\ctg_test>p4 -ztag opened 
... depotFile //ctg_test/test_branch.txt 
... clientFile //client-mark.allender/ctg_test/test_branch.txt 
... rev 1 
... action add 
... change default 
... type text 
... user mark.allender 
... client client-mark.allender 

P4 FSTAT沒有幫助的。

+0

老鼠,我害怕這可能是答案。希望別人也許會知道一些魔法,否則我可能會走運。 – Charlie 2009-06-03 22:07:27

2

p4 resolved」幾乎完全符合你的要求,但不幸的是它在2007年是新的。

[C:\dfp\Common\Code\Python]p4 opened foo.py 
//buddha/Common/Code/Python/foo.py#1 - add default change (kxtext) 

[C:\dfp\Common\Code\Python]p4 resolved foo.py 
c:\dfp\Common\Code\Python\foo.py - branch from //buddha/Common/Code/Python/memdump.py#1,#30 

在用戶運行「解決」之前,您可能無法檢測到問題,但在提交之前必須先解決問題。

+0

非常有趣 - 感謝您的信息。即使它不適合我的舊版本,希望它可以幫助別人。 – Charlie 2009-10-24 14:27:27