1.安装svn yum -y install subversion 2.创建hydata目录 mkdir -p /var/svn/hydata 3.创建 m 目录 mkdir -p /var/svn/m 4.创建hydata仓库 svnadmin create /var/svn/hydata 5.创建m仓库 svnadmin create /var/svn/m 6.设置hydata仓库帐户安全(/var/svn/hydata/conf下) 1) vi authz [/] zw=rw (zw为用户名 rw为用户权限) 2) vi passwd zw=123 (zw为用户名 123为密码) 3)vi svnserve.conf anon-access = none auth-access = write password-db = passwd authz-db = authz realm = /var/svn/hydata (你自己的仓库地址) 7.启动hydata版本服务(端口:3690) svnserve -dr /var/svn/hydata 防火墙设置3690端口开启 vi /etc/sysconfig/iptables 添加: -A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT 8.设置hydata提交更新到hydata网站根目录的钩子脚本 1)cd /var/snv/hydata/hooks (客户端提交,服务器端也立刻同时更新) 2)cp post-commit.tmpl post-commit 3)chmod a+x post-commit 4)vi post-commit export LANG=en_US.UTF-8 svn up --non-interactive --username zw --password 123 '/usr/local/src/web/hydata' 9.设置 m 仓库帐户安全 1) vi authz [/] zw = rw 2)vi passwd zw = 123 3)vi svnserve.conf anon-access = none auth-access = write password-db = passwd authz-db = authz realm = /var/svn/m 10.启动 m 版本服务(端口:3691) svnserve -dr /var/svn/m --listen-port 3691 11.设置m仓库提交更新到m网站根目录的钩子脚本 1)cd /var/svn/m/hooks 2)cp post-commit.tmpl post-commit 3)chmod a+x post-commit 4)vi post-commit export LANG=en_US.UTF-8 svn up --non-interactive --username zw --password 123 '/usr/local/src/web/m' 12.检查启动端口 netstat -tunpl | grep svn 13.在hydata网站目录下检出hydata仓库版本 svn co svn://127.0.0.1 ./ (服务器上本地的版本放入进来) 14.在m网站目录下检出 m 仓库版本 svn co svn://121.199.5.128:3691 ./ 15.像tp程序会自动在应用下生成文件或目录,所以daemon要对hydata 和 m 目录有充分的权限 setfacl -m u:daemon:rwx -R /usr/local/src/web/hydata setfacl -m d:u:daemon:rwx - R /usr/local/src/web/hydata
===============================================================================
钩子更新有问题使用:
REPOS="$1" REV="$2" TXN_NAME="$3" WEB=/data/www/wx #这个地方写你准备放代码的路径 export LANG=en_US.UTF-8 svn update $WEB --username sowhy --password 000 #sowhy是svn的用户名,000000是svn密码