CentOS下搭建SVN

时间:2021-07-22 15:56:27
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密码