共计 1284 个字符,预计需要花费 4 分钟才能阅读完成。
碰到一个问题 svn 不能 ftp ftp 又不能 svn 有没有一个办法把两个联系起来呢?其实不需要 svn 自带的 hooks(钩子) 功能足以满足你得需求
svn 配置和设置可以网上直接找到。直接说怎么配置自动同步功能。在 svn 的目录下 /www/svn/repos/hooks 有的文件 post-commit.tmpl
这个就是需要修改的文件也就是在 svn 有 commit 的时候我们需要做的
1. 设置需要更新的目录 直接在配置好的首页对应的目录里面 checkout 一下
2. 修改 post-commit.tmpl 文件 cp post-commit.tmpl post-commit
3. 编辑 post-commit 文件的内容,注意 post-commit 文件是需要 apache 用户有可以执行的权限的
4.
export LANG=zh_CN.UTF-8
REPOS=”$1″
REV=”$2″
WEB_PATH=/www/web/public_html_new/xxx
LOG_PATH=/www/web/log/svn_upload_log
CURDATE=”date”
echo“code commit at $CURDATE”>> $LOG_PATH
/usr/bin/svn update $WEB_PATH –username 用户名 –password 密码 >> $LOG_PATH
其中:
WEB_PATH 是 apache 下设置的网页的目录
LOG_PATH 是日志的目录
执行完毕后在本地连接并提交 svn 同时线上的代码就可以实时更新了
需要特别注意的是
需要在 apache 的 httpd.conf 或者包含的文件里面设置 .svn 目录禁止访问
<DirectoryMatch .*\.svn/.*>
Deny From All
</DirectoryMatch>
Ubuntu Server 14.04 安装 Web 服务器 (Linux+Apache+MySQL+PHP) http://www.linuxidc.com/Linux/2015-06/119061.htm
Linux 下安装配置 PHP 环境 (Apache2) http://www.linuxidc.com/Linux/2015-05/118062.htm
Ubuntu 13.04 安装 LAMP\Vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm
CentOS 5.9 下编译安装 LAMP(Apache 2.2.44+MySQL 5.6.10+PHP 5.4.12) http://www.linuxidc.com/Linux/2013-03/80333p3.htm
RedHat 5.4 下 Web 服务器架构之源码构建 LAMP 环境及应用 PHPWind http://www.linuxidc.com/Linux/2012-10/72484p2.htm
Apache 的详细介绍 :请点这里
Apache 的下载地址 :请点这里
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-10/123981.htm