HTTP请求更新服务器SVN代码

来源:互联网 发布:mac压缩包解压错误 编辑:程序博客网 时间:2024/05/01 22:20
 适用场景:
           在本地编写代码,提交到SVN服务器,而测试服务器不在本地(模仿生产环境),我们需要通过SVN更新测试服务器代码,这就会出现一个问题:来回登陆测试服务器去更新代码。如果我们能通过请求URL更新SVN代码不是更方便?。

前提条件:SVN服务端,代码运行环境(可能是Java,C#,PHP等等),必须拥有相应的目录、文件权限。


<?php        error_reporting(E_ALL);        /* 加入重定向以得到标准错误输出 stderr。 */        echo '<h2>Svn is updating!</h2>';        $svn_project_path = '/var/www/mylaravel/';   // svn项目路径        $username = 'andy';  // svn账户        $password = '********';  // svn账户密码         $handle = popen('svn up --username $username --password $password $svn_project_path  2>&1', 'r');         // 下面只是输出更新记录,如果没必要看更新记录可以去掉         $contents = '';        do {             $data = fread($handle, 8196);   // 8196代表读取的字节数             if (strlen($data) == 0) {                break;             }             $contents .= $data . '<br/>';         } while(true);        echo $contents;        pclose($handle);        echo '<h2>Svn updated successfully!</h2>';?>

上面是PHP编写的更新SVN代码,相对于其它语言版本是比较简单的(如:Java,C#)。
上面代码是在Ubuntu 12.04测试通过的。

如需改写请自己实现。

0 0