系统要求:已配置好svn环境,且已经搭建好网站的svn版本库,本地svn可以正常提交使用
第一步:进入到你的web根目录(例如 /home/wwwroot)
# cd /home/wwwroot
svn版本库检出(这里以网站目录为test为例)
# svn checkout svn://121.18.177.148/test (检出完成,wwwroot下会多一个test文件夹)
第二步:编写钩子脚本
1.进入到版本库的钩子目录下 (例如目录:/var/svn/test/hooks/)
# cd /var/svn/test/hooks
编辑
# vim post-commit
(如果是post-commit.tmpl模板文件,使用命令 #mv post-commit.tmpl post-commit 命令改文件名称)
2.内容如下:
#!/bin/sh
export LANG=zh_CN.UTF-8
#设定语言,根据系统语言设置,如果是UTF-8 就设置为 LANG=zh_CN.UTF-8
SVN=/usr/bin/svn #SVN路径
WEB=/home/wwwroot/test/ #要更新的web目录,也是检出版本库目录
$SVN update $WEB --username root --password mypassword no-auth-cache
(注意 看看文件最下边是否有未注释的内容,如果有 用 # 注释掉,切记)
3.保存退出
第三步:给 post-commit 执行权限
# chmod -R 755 post-commit
第四步:重启svn服务器
# killall svnserve 停止svn服务
# svnserve -d -r /var/svn 启动svn服务
# ps -ef|grep svn|grep -v grep 查看svn进程
第五步:做提交测试 (本地svn提交一个文件看看是否同步到了web服务器目录下)