linux服务器自行搭建svn服务端

2017-07-06

安装svn服务端
 
yum -y install subversion
 
查看安装内容与位置 
rpm -ql subversion
 
建立SVN根目录 
mkdir -p /www/svn/
 
新建版本库:www.test.com
svnadmin create /www/svn/www.test.com
 
注:执行完后,/www/svn/www.test.com目录下文件说明
README.txt   版本库的说明文件
conf            配置文件件夹(后续操作最多的文件夹)
db              SVN数据文件文件夹
format          当前版本库的版本号
hooks           SVN的钩子脚本文件夹
locks           SVN的文件锁相关的文件夹
 
 
www.test.com库添加用户、分配权限 
配置SVN
vi /www/svn/www.test.com/conf/svnserve.conf
 
anon-access=none     #去除文件前的注释,将read改为none,防止匿名访问
auth-access=write    #去除文件前的注释
password-db=passwd   #去除文件前的注释
authz-db = authz     #去除文件前的注释,访问权限配置,非常重要,不打开,分组权限不生效
 
添加访问TestCode用户
vi /www/svn/www.test.com/conf/passwd
 
[users]
# harry = harryssecret
# sally = sallyssecret
test=123456
 
注:添加了1个用户
 
设置添加的用户组权限
vim /www/svn/www.test.com/conf/authz
 
 
[groups]
g_dxs=test
 
[www.test.com:/]        #[<版本库名>:<路径>] 
@g_dxs=rw           #<用户组> = <权限>  ,第一种方式
love=r   #<用户名> = <权限>  ,第二种方式
*=                  #* = <权限>,第三种方式,*为任意用户,此为禁止匿名用户访问
 
防火墙处理
iptables -A INPUT -p tcp --dport 3690 -j ACCEPT
 
 
开启SVN服务
svnserve -d -r /www/svn/
 
 
VN客户端访问 
svn://192.168.1.100/www.test.com
 
 
做完这些就剩下设置自动web目录更新了。 
 
cd /www/svn/www.test.com/hooks/
 
mv post-commit.tmpl post-commit
 
然后编辑post-commit,在文件最后添加以下内容
vim post-commit
 
#!/bin/sh
export LANG=zh_CN.UTF-8
/usr/bin/svn update --username test --password 123456 /www/web/www.test.com
 
然后记得让post-commit有执行的权限
chmod a+x post-commit
 
 
svn co svn://localhost/www.test.com /www/web/www.test.com/
 

相关文章

推荐下载

评论已有( 0 )条评论

昵称*
邮箱

快评短语
写的太好了,正好为我解惑 一般般,不详细 无感觉,然并卵 没啥事,就来灌一下水 还有其它的吗?