2013-03-06 76 views
2

的事情是, 與p4 changes命令,你可以指定時間範圍內所有例如在那段時間 提交的變更列表的結合P4描述和P4的改變命令來獲取結果所需

p4 changes -l //depot/main/Project/src/[email protected]/02/20,@now" 

會爲您提供關於提交的每個更改列表的詳細信息,但不會爲您提供包含在此更改列表中的文件名。

而且

p4 describe 6254561 

命令會給你的所有信息有關6254561的變更表,包括受影響的文件,但你不能對所有的變更列表中指定的時間範圍。

是否有機會以某種方式組合這些命令? 或者有可能是我需要的命令,但我只是不知道它? 我只需要獲取關於每個更改列表的所有描述,此更改列表中影響的文件以及項目路徑和時間範圍。

回答

1

如果你在Mac或Linux,你可以管兩個命令在一起,得到的輸出,你需要:

p4 changes -l //depot/main/Project/src/[email protected]/02/20,@now" | cut -d " " -f 2 | xargs p4 describe 
+0

nope,windows here ..... but thanks反正.... – inside 2013-03-06 22:41:05

+0

您可以使用CygWin(Windows的UNIX shell)來運行上述命令。可能有一種Windows本地方式將命令鏈接在一起,但恐怕我不太瞭解Windows以提供任何答案。 – 2013-03-06 22:44:23

+1

你可以在Windows上做同樣的事情;你只需要Windows版本的'cut'和'xargs'。兩者都可以通過unxutils.sourceforge.net獲得。 – jamesdlin 2013-03-07 06:46:48

0

你應該選擇與你舒適的腳本語言:的Perl,Python的,Ruby等。所有這些腳本語言都具有全功能的Perforce庫,並附帶了大量關於如何編寫這些簡單腳本的示例。

花費幾分鐘的時間以適應您所選擇的腳本語言,以及如何與Perforce交互,將會帶來更好的工具開發體驗,當您準備好寫更多複雜和詳細的腳本爲您的工作需要。

看看這裏開始:http://www.perforce.com/product/components/apis

1

像這樣的東西應該指向你在正確的方向:

for /f "tokens=2" %x in ('p4 changes //depot/main/Project/src/[email protected]/02/20^,@now') do @(p4 describe -s %x & echo --------) 

通知逃脫,在那裏。

+0

工作完美,非常感謝。 – 2013-11-27 14:27:04