2010-09-15 253 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