2011-03-14 56 views
0

靠的是SVN版本我想下載文件靠的是SVN版本我想下載文件在PHP

命令:svn log -r ".$fileId ." -v

輸出:

Array 
(
    [0] => ------------------------------------------------------------------------ 
    [1] => r11369 | owner | 2011-03-14 15:42:38 +0530 (Mon, 14 Mar 2011) | 1 line 
    [2] => Changed paths: 
    [3] => A /Process Related Documents/Engineering/SourceCode/fullpath 
    [4] => 
    [5] => Uploaded By Username 
    [6] => ------------------------------------------------------------------------ 
) 

有1檔5次修訂

r01,r02,r03,r04和r05 現在我想下載r03文件..

+1

你應該考慮編輯這個問題,因爲它沒有多大意義。你在這裏有什麼問題? – dianovich 2011-03-14 13:30:41

+1

您可以使用'--xml'選項以XML格式提取日誌,可能會更容易解析。 – mdm 2011-03-14 13:32:35

+0

svn「保存修改爲」commad line怎麼辦 – rajaneesh 2011-03-15 05:47:29

回答

0

如果我正確地解析你的問題,你所說的是這樣的:

你已經走過了歷史/找到了信息,而且你知道有五個不同的版本修改了這個文件。基於此,您已經選擇了其中一個版本(第三個版本),並且您想要查看該文件當時的樣子。

爲此,您想要svn cat

            
 
cat: Output the content of specified files or URLs. usage: cat TARGET[@REV]... If specified, REV determines in which revision the target is first looked up. Valid options: -r [--revision] ARG : ARG (some commands also take ARG1:ARG2 range) A revision argument can be one of: NUMBER revision number '{' DATE '}' revision at start of the date 'HEAD' latest in repository 'BASE' base rev of item's working copy 'COMMITTED' last commit at or before BASE 'PREV' revision just before COMMITTED

已經從資源庫中,只需選擇svn cat uri://to/repository/to/file -r REVNUM的版本號。

或者,當您使用PHP時,通過svn PECL package獲取所需的信息可能會更容易,而不是試圖解析命令行輸出。

+0

非常感謝您的回放...... – rajaneesh 2011-03-17 05:06:22

相關問題