Linux下搭建SVN服务器

Linux下搭建SVN服务器

一、 安装前准备
安装环境:阿里云ECS/CentOS 7.4 64位
安装目标:subversion
远程工具:Xshell5

1、准备好以上工具并确保云主机正常连接
2、命令行下查看服务器的系统信息
  #cat /etc/issue        查看系统信息
  #uname -a          查看系统详细信息
  #getconf LONG_BIT      查看CPU运行模式
3、查看当前系统是否已经安装过SVN:svnserve --version

二、 安装SVN
1、 自动安装命令
#yum install subversion
Linux下搭建SVN服务器
2、查看安装位置
  #rpm -ql subversion
Linux下搭建SVN服务器
3、创建svn版本库目录
#mkdir -p /var/svn/
Linux下搭建SVN服务器
4、创建版本库
  #svnadmin create /var/svn/svnrepos
Linux下搭建SVN服务器
5、进入conf目录(该svn版本库配置文件)
#cd /var/svn/svnrepos/conf/
Linux下搭建SVN服务器
authz文件是权限控制文件
passwd是帐号密码文件
svnserve.conf SVN服务配置文件

6、设置账号密码
#vi passwd
Linux下搭建SVN服务器
在[users]块中添加用户和密码,格式:帐号=密码,如[email protected]

7、设置权限
#vi /var/svn/svnrepos/conf/auth
Linux下搭建SVN服务器
意思是admin组的用户admin、qkl有读写权限,test组的guest用户只有读权限

8、修改svnserve.conf文件
#vi svnserve.conf
打开下面的几个注释:
anon-access = none #匿名用户不可读写
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /var/svn/svnrepos # 认证空间名,版本库所在目录
Linux下搭建SVN服务器
9、启动svn版本库
#svnserve -d -r /var/svn/svnrepos
Linux下搭建SVN服务器
10、SVN默认的打开端口是3690
#netstat -antp | grep svn
Linux下搭建SVN服务器
11、centos7 打开防火墙端口
#firewall-cmd --permanent --zone=public --add-port=3690/tcp
#firewall-cmd --reload
Linux下搭建SVN服务器
12、修改成开机启动
#systemctl enable svnserve.service
Linux下搭建SVN服务器
13、客户端测试验证
Linux下搭建SVN服务器
14、设置SVN提交必须填写注释
1)进入svn版本库目录的hooks文件夹
Linux下搭建SVN服务器
2)创建pre-commit文件,并填下如下内容
Linux下搭建SVN服务器
3)给 pre-commit 文件增加可执行权限
Linux下搭建SVN服务器
4)客户端验证
Linux下搭建SVN服务器
不填写注释,直接提交
Linux下搭建SVN服务器
提交失败!
Linux下搭建SVN服务器
填写注释提交
Linux下搭建SVN服务器
提交成功!

查看svn服务运行状态:systemctl enable svnserve.service
停止svn服务:systemctl stop svnserve.service
启动svn服务:systemctl start svnserve.service