目录
svn服务器在linux上安装比较简单,有两种安装方式:
1、下载安装包,解压进行安装
2、使用命令自动安装
下面我们采用第二种。
一、下载
安装 Subversion,在官网:http://subversion.apache.org/ 下载。
这步省略,不需要下载
二、安装
执行以下命令:
yum install subversion
安装也太六了,就执行这条语句自动安装完成,我都不知道哪跟哪,懵逼中,手不知道往哪放好。
三、测试安装
执行以下命令
svnserve --version
四、查看安装位置
rpm -ql subversion
五、创建存储仓库
看了百度上好多人都把SVN仓库存放在 /usr/svn/repository中,或者/var/svn,或者/home/svn,我本来想知道选择放哪里最合适,最后发现,没有标准,所以我选择自建目录u01,放u01/svn/repository。位置重要吗?貌似也不是很重要,只有利于管理就行。
- 创建文件夹 /u01/svn
cd /
mkdir u01
cd /u01
mkdir svn
注:我们以/u01/svn 作为SVN仓库的跟目录,下面将会创建多个仓库
- 创建仓库,仓库名为:repository
cd /u01/svn
svnadmin create repository
可以看到 /u01/svn 下有文件夹:repository,文件夹中有如下内容:
开始我们先了解 conf 里的配置,进入 conf
cd conf
其中有3个文件,分别是:
authz 是权限控制文件
passwd 是帐号密码文件
svnserve.conf 是SVN服务配置文件
- 下面我们要做的事情是:
(1)创建一个用户,用户名字为:test,密码为:123456
(2)给test访问仓库(repository)的读写权限
(3)配置svn
六、创建用户(编辑passwd)
编辑文件:passwd
vim passwd # or vi passwd
注意:=号左右有空格
七、用户权限配置
编辑 authz
vim authz
在底部输入
[/] # 最高权限,SVN仓库(/u01/svn/)的整个文件夹都可以访问,除此之外,比如:[/u01/svn/repository] 表示设置这个/u01/svn/repository路径下的权限
test = rw # test用户具备读写权限
* = # 除此之外,其他用户没有权限
八、SVN启动配置
编辑 svnserve.conf
vim svnserve.conf
打开下面的5个注释
解释以下以上的配置:
anon-access = read #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /home/svn # 认证空间名,版本库所在目录
九、启动SVN服务器
svnserve -d -r /u01/svn
启动服务器,指定到跟目录:/u01/svn,不能指定到仓库:/u01/svn/repository。
查看是否启动:
十、SVN客户端安装
官网下载:https://tortoisesvn.net/
因为安装简单,所以安装步骤略!
十一、用SVN客户端连接SVN服务器
在window,我客户端用的是window系统,进入你想要”检出“到的目录,我的是d:/svn/repository,右键属性,SVN检查,如下图示:
跳出检出窗口,如下图示:
填写SVN地址,svn://192.168.3.99:3690/repository,不可以写出:svn://192.168.3.99:3690/u01/svn/repository,因为/u01/svn已经是跟目录,系统已经知道/u01/svn是仓库的跟目录,只写仓库名称就行。确定,输入账号密码,如下:
连接成功如下:
因为是空仓库,目前还没有导入文件。到这里已经完成本文章的主要目的。另外说一点,就是可能会出的问题,在客户端连接服务器的过程中,可能会连不上,其中有一个原因,就是防火墙端口问题。
十二、开发防火墙端口
编辑/etc/sysconfig/iptables文件,加入以下内容:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT
如果没有找到iptables,请看《centos7下没有iptables》