2010-09-15 43 views
4

我是SVN的新手,試圖通過PHP來操縱它。我試圖使用popen()直接執行SVN調用無濟於事。如何在PHP中使用SVN函數?

我在php.net上發現了this module,它具有在PHP中管理SVN的方法。

那麼,我該如何安裝和配置此模塊?

+4

我不知道PHP的過這個..我非常有興趣知道的太多 – WalterJ89 2010-09-15 10:42:02

+1

那麼,你可能需要更確切地說「這個問題」實際上是什麼。如果您有關於SVN API的具體問題,請詳細說明您的問題並命名。 – Gordon 2010-09-15 10:58:41

+0

php.net上的文檔確實遠非完美,但應該可以掌握這一挑戰。如果可以處理svn,那麼你應該可以處理這個API。 – splash 2010-09-15 11:02:50

回答

0

你在操作什麼操作系統?無論您使用哪種語言,SVN都會一樣的工作。只需爲您的平臺找到一個好工具。

的Windows

如果您問如何控制和SVN respoitory從PHP那麼你應該只是閱讀文檔。我發現doc.php.net

+0

我很小白,我不知道如何安裝和配置libsvn到PHP :( – Chameron 2010-09-16 02:29:25

5

如果你使用Ubuntu(或者其他基於Debian-OS),你可以很容易通過運行以下命令安裝此:

sudo apt-get install php5-svn 
sudo /etc/init.d/apache2 restart 

如果安裝並且Apache平穩重啓,您應該可以使用PHP文檔中列出的任何SVN函數!

爲了讓您一開始,這裏是一個PHP腳本更新在當前目錄

svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_USERNAME, 'yourUserName'); 
svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_PASSWORD, 'yourPassword'); 
$b4 = trim(`svnversion`); 
if ($revision = svn_update(realpath(getcwd()))) { //use @svn_update(...) if you want to hide warnings 
    if ($b4 === trim(`svnversion`)) { 
     echo 'Already up-to-date (r'.$b4.').'; 
    } else { 
     echo 'Updated to r'.$revision; 
    } 
} else { 
    echo 'Update failed'; 
} 
0

回購......在CentOS 7.0可以這樣安裝它:

安裝先決條件:

yum install php-devel subversion-devel php-pear 

下載PHP-SVN和構建它:

pecl install svn 

添加配置文件:

echo "extension=svn.so" > /etc/php.d/svn.ini 

重啓HTTPD:

/bin/systemctl restart httpd.service