本篇文章主要分享一下在linux(centos)系统下搭建SVN服务器的方法。
安装步骤如下:
1、yum install -y subversion
安装完毕输入 svnserve --version 验证是否安装成功
2、输入
rpm -ql subversion
查看安装位置,如下图:
我们知道svn在bin目录下生成了几个二进制文件。输入 svn --help可以查看svn的使用方法,如下图。
3、创建svn版本库目录
mkdir -p /var/svn/svnrepos
4、创建版本库
svnadmin create /var/svn/svnrepos
执行了这个命令之后会在/var/svn/svnrepos目录下生成如下这些文件:
5、进入conf目录(该svn版本库配置文件),会看到如下几个文件:
authz 权限控制文件
passwd 帐号密码文件
svnserve.conf SVN服务配置文件
6、设置帐号密码
vi passwd
在[users]块中添加用户和密码,格式:帐号=密码,如dan=dan
7、设置权限
vi authz
在末尾添加如下代码:
[/]
dan=rw
w=r
意思是版本库的根目录dan对其有读写权限,w只有读权限。
8、修改svnserve.conf文件
vi svnserve.conf
打开下面的几个注释:
anon-access = read #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /var/svn/svnrepos # 认证空间名,版本库所在目录
9、启动svn版本库
svnserve -d -r /var/svn/svnrepos
10、在windows上测试
新建一个测试文件夹,在该文件夹下右键选择 SVN checkout如下图(要事先安装TortoiseSVN):
填写SVN的地址,如下图:
输入密码,如下图:
接下来就可以快乐的使用SVN上传代码了。如果有出现访问不了的情况,可检查服务器上的防火墙的问题,SVN服务器默认开启的是3690端口,如果没有开启该端口的话,可以开启该端口,关于如何开启linux上的端口的方法可参考本站文章:
Centos查看端口占用情况和开启和关闭端口的命令
如果还出现其他错误的话,欢迎在下面留言提问。
提示:
(1)以上文章里面的提到的三个配置文件会有大量的注释,全英文的,可清空。
(2)按照如上配置还不行的话,可将 authz passwd svnserve.conf 这三个文件的内容清空,分别改为如下内容:
authz
[groups] [/] admin = rw user1 = r [/user1/] user1 = rw
passwd
[users] admin =admin user1 =user1
svnserve.conf
[general] anon-access = none auth-access = write password-db = passwd authz-db = authz