您的位置主页 > 服务器专区 > svn > 10分钟搭建功能强大的SVN版本控制系统

10分钟搭建功能强大的SVN版本控制系统

2010-05-28    文章来源:互联网    浏览次数:1104     分享文章

安装:

FreeBSD:
cd /usr/ports/devel/subversion/
make install clean
Ubuntu:
apt-get install subversion
CentOS:
yum -y install subversion
 

创建仓库:

svnadmin create /home/svn/demo1
svnadmin create /home/svn/demo2
 
分别编辑仓库demo1和demo2下的passwd authz svnserve.conf
 
注意:每一行去掉#号后要顶格写
 
passwd  (定义用户和密码)
[users]
# 用户 = 密码
admin = admin
owner = 123456
test = test
 
authz (定义每个组或用户的读写权限)
[groups]
# 组 = 用户
admin=admin,owner
# 目录权限
[/]  #(这里 / 是相对于.../svn/demo1/ 和 .../svn/demo2/的,不是想对于.../svn/的)
@admin=rw   #admin组可读可写
test = r #test用户可读
 
svnserver.conf (svn服务器配置文件)
[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access = none
#认证用户的权限,可以是read,write,none,默认为write
auth-access = write
#密码数据库的路径
password-db = passwd
#认证用户的权限定义文件
authz-db = authz
 

启动svn服务器:

svnserve -d -r /home/owner/svn/ --listen-host www.kukaka.org
如果提示已经有一个svnserve进程,可以用命令killall svnserve 来关闭该进程。
查看是否存在进程:ps -auxwww | grep svn
 
现在就可以在客户端用TortoiseSVN来checkout
svn://www.kukaka.org/demo1
svn://www.kukaka.org/demo2
 

实现SVN与WEB同步:

1)设置WEB服务器根目录为/www/demo1
 
2)checkout一份SVN
svn co svn://www.kukaka.org/demo1 /www/demo1
修改权限为WEB用户
FreeBSD:
chown -R www:www /www/demo1
Ubuntu:
chown -R www-data:www-data /www/demo1
CentOS:
chown -R apache:apache /www/demo1
 
3)建立同步脚本
cd /svn/news/hooks/
cp post-commit.tmpl post-commit
编辑post-commit,在文件最后添加以下内容
export LANG=en_US.UTF-8
SVN=/usr/bin/svn
WEB=/www/demo1/
$SVN update $WEB –username owner –password 123456
#根据自己系统选择下面中的一个
chown -R www:www $WEB
chown -R www-data:www-data $WEB
chown -R apache:apache $WEB

增加脚本执行权限
chmod +x post-commit

 

文章评论(查看全部)

昵 称 *
电子邮箱 *
网 址      6 + 2 = ?