Linux(CentOS)系统下搭建svn服务器

由于GitHub的私有项目需要收费,gitlab对服务器的要求必须是4GB内存以上。对于一些个人的小型项目,想要免费的版本控制工具来管理自己的代码,又不想代码公开,无疑SVN是比较好的选择。windows下的SVN搭建比较简单,但是一般购买服务器选择Linux的还是比较多。下面就介绍在Linux系统下如何搭建自己的SVN服务器。

【安装步骤】

1.使用yum在线安装

$ yum install subversion

$ rpm -ql subversion  #查看安装位置.

2.创建svn版本库目录(此处演示创建多个)

$ mkdir -p /root/svn/project1

$ mkdir -p /root/svn/project2

3.创建版本库

$ svnadmin create /root/svn/project1

$ svnadmin create /root/svn/project2

【配置说明】

1.进入其中一个版本库的配置文件目录(此处只讲解其中一个版本库的操作说明)

$ cd /root/svn/project1/conf

Linux(CentOS)系统下搭建svn服务器

authz 文件是权限控制文件

passwd 是帐号密码文件

svnserve.conf 是SVN服务配置文件

2.设置帐号密码

$ vim passwd

在[users]块中添加用户和密码,格式:帐号=密码,如renxing=renxing

Linux(CentOS)系统下搭建svn服务器

3.设置权限

$ vim authz

在末尾添加如下代码:(备注:Linux下快速到达vim末尾的命令是:Shift+G.更多关于vim操作的命令请 参考这里)

[/]
renxing=rw
w=r

Linux(CentOS)系统下搭建svn服务器

意思是版本库的根目录renxing对其有读写权限,w只有读权限

4. 修改svnserve.conf文件

$ vim svnserve.conf

打开下面的几个注释:

anon-access = none   #匿名用户可读 【参考:https://www.cnblogs.com/kccdzz/p/9414045.html】
auth-access = write  #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz     #使用哪个文件作为权限文件
realm = /root/svn/project1 #认证空间名,版本库所在目录

Linux(CentOS)系统下搭建svn服务器

说明:project2的配置方法同上。

【启动svn版本库】 

启动当前svn版本库:

$ svnserve -d -r /root/svn

SVN默认的打开端口是3690,可以通过下面的命令查看:

$ netstat -antp | grep svn

Linux(CentOS)系统下搭建svn服务器

centos7 打开防火墙端口:

$ sudo firewall-cmd --permanent --add-port=3690/tcp

$ sudo firewall-cmd --reload

如果是在阿里云购买的服务器,还要打开3690端口才能访问。

找到服务器的“配置规则”,点击“添加安全组规则”

Linux(CentOS)系统下搭建svn服务器

Linux(CentOS)系统下搭建svn服务器

在客户端测试:

$ svn checkout svn://127.0.0.1

之后输入passwd中输入的账号和密码即可检出代码。

备注:Linux下安装svn客户端的命令为: $ yum install svn

上一篇:AndroidTestCase测试用法


下一篇:操作表数据