Home > Backend Development > PHP Tutorial > php中执行svn update问题

php中执行svn update问题

WBOY
Release: 2016-06-23 13:59:09
Original
1085 people have browsed it

<?php$username = 'test';$password = '111';$target_dir = 'svn://localhost/kf5';exec("svn up --username $username --password $password $target_dir 2>&1", $output);print_r($output);
Copy after login


希望采用php的exec执行svn update实现代码同步。可是程序没有如期执行:结果如下:求帮助 
Skipped 'svn://115.29.186.170/kf5'

请问如何执行的?或者说大家是如何实现svn代码更新后,web服务器就可以直接执行的?


回复讨论(解决方案)

php利用svn协作开发,并实时检验代码,有人做过么?

执行exec('mkdir tests');是成功的。能成功创建tests文件目录。

http://gongwen.sinaapp.com/article-132.html

to zy205817  谢谢 总是提示:skipped ...

问题解决:除去给此目录权限外。首先得执行如下命令:

svn co file:///data/web/kf5   /data/web/kf6    

第一个目录file:///data/web/kf5为svn代码库目录。第二个目录为web目录。
然后再执行:
svn update /data/web/kf6/ --username svn_name --password svn_passwd --no-auth-cache
测试通过:

然后在svn目录hooks里写上执行脚本:
文件名:post-commit
文件内容:
#!/bin/sh
REPOS="$1"
REV="$2"
export LANG=en_US.UTF-8
svn update /data/web/kf6/ --username svn_name --password svn_passwd --no-auth-cache

最后不要忘记给web目录写权限和post-commit文件执行权限。




svn命令行参考:
http://www.blogjava.net/jasmine214--love/archive/2011/01/12/342839.html

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template