系统:centos 6.8 软件版本: yum安装
# 安装svn
yum -y install subversion httpd mod_dav_svn
# 创建目录
mkdir /data/svn -pv
# 创建svn版本
svnadmin create x
# 检查httpd模块是否有这两个,如果没有需要安装mod_dav_svn
vim /etc/httpd/conf.d/subversion.conf
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
# 配置svn http访问
vim /etc/httpd/conf.d/subversion.conf
<Location /svn>
DAV svn
SVNParentPath /data/svn # 配置的svn根目录
SVNListParentPath on
AuthType Basic
AuthName "svn for bjwmt"
AuthUserFile /data/svn/passwd# 用户密码
AuthzSVNAccessFile /data/svn/authz.conf# 用户认证配置文件
Require valid-user
</Location>
######### 创建用户 #########
进入/data/svn
htpasswd passwd 用户名
New password: # 输入两次密码
######### 权限配置 #########
vim /data/svn/authz
------------------------- 配置用户权限 -------------------------
# 设置权限
[groups]# 这里是组
job_doc = 用户名
比如
[a名称]
创建的用户名 = rw# 格式不能变
------------------------- 配置目录权限 -------------------------
[x:/] # 这里的权限是根目录,一定不要开给开发
@job_doc = rw
# 比如
[b名称:/路径]
@job_doc = rw# 这里也是自定义配置的路径
# 最后启动服务
service httpd restart
service svnserve restart
chkconfig svnserve on
chkconfig httpd on
# 最后浏览器直接访问
http://ip/svn/x/
Svn启动服务脚本
因每次都需要手动开启关闭svn服务,颇为麻烦,直接使用数字键1-N来配置
使用平台: rhel centos6 7
使用: 直接复制脚本,然后chmod +x xx.sh 就能使用了
#!/bin/bash
#
# __auther__: xiong
# __ time __: 2018年02月26日 09:28:09
# __ 作用 __: 用于启动svn服务的集中脚本文件
# __需学习__: shell数组,case
# __ 使用 __: 脚本名称需要执行权限 直接使用脚本就能运行 注意启动时的大小写
Httpd="/sbin/service httpd"
Svnd="/sbin/service svnserve"
Save_Date=`date +"%Y%m%d%H%M"`
cat << EOF
1: 启动svn
2: 关闭svn
3: 重载svn
4: 新建用户
EOF
read -p "请输入序列号: " Nums
case "$Nums" in
1)
echo "svn服务将会被启动"
$Httpd start
$Svnd start
;;
2)
echo "svn 服务将会被关闭"
$Httpd stop
$Svnd stop ;;
3)
echo "重载svn服务"
$Svnd reload ;;
4)
/bin/cp -i passwd passwd.$Save_Date
read -p " 请输入用户名: " Username
/usr/bin/htpasswd passwd $Username ;;
*)
echo "请输入正确的序列号" ;;
esac