linux下SVN多仓库支持0条评论

2016年03月11日   分类:Linux   1373人浏览

安装很简单:

yum install subversion


安装完成后创建新仓库:

mkdir /home/svn
mkdir /home/svn/xxxx
svnadmin create /home/svn/xxxx


接下来:/home/svn/xxxx/config  需要修改:authz、passwd、svnserve.conf  三个文件。


authz(授权文件,修改添加用户权限,在文件末尾添加):

[/]
user01 = rw  #rw代表读写权限
user01 = rw



passwd(用户名密码文件,修改添加用户密码,在文件末尾添加):

user01 = 123456
user02 = 654321


svnserve.conf(配置文件)

找到:

anon-access = read

auth-access = write

password-db = passwd

authz-db = authz

把它们前面的#都去掉并顶边


找到:

realm = /xxx/xxx

改为:

realm = /home/svn

#去掉并顶边


下面如果需要的话,可以设置hook自动部署



打开该仓库下的 hooks/post-commit.tmpl 去掉后缀“.tmpl” 把里面的内容全部清空。(最好不要自建post-commit,就用去掉后缀的方式,吃过亏~~~泪奔中~~)

再粘贴入:


假设你的网站目录为:/www/my_web (该目录的权限要改为你真正的用户权限,最好别是root)


#!/bin/bash
export LANG=en_US.UTF-8  
SVN=/usr/bin/svn  #必须写绝对路径
REPOS="$1"
REV="$2"
STATIC_DIR=/www/my_web  #注意权限问题
echo $REPOS,$REV,"##########开始提交 " `date "+%Y-%m-%d %H:%M:%S"` '##################' >> /home/svn/xxx/hooks/svn.log
$SVN update $STATIC_DIR --username user01 --password 123456 --no-auth-cache 
chown -R apache:apache /www/my_web/

chown -R www:www /www/my_web/  这句最好加上,否则文件都是“root”权限组会出现访问限制问题。至于里面的“www:www”,可以改为你真正的用户权限。


接下来再执行命令:

chown www:www ./post-commit
chmod +x ./post-commit


执行好后,切换到网站根目录执行命令:

svn co svn://123.123.123.123/xxxx ./


上面这个命令IP地址改成你服务器IP就OK,“./”  也别省略


最后,在你本地目录链接SVN吧~  commit之后会自动部署的



转载请注明:老猫博客 » linux下SVN多仓库支持

继续查看有关 SVN部署 的文章