CentOS7安装搭建SVN服务器以及基本配置和使用

一、验证机器上是否已经安装了SVN
1.检查是否安装
rpm -qa subversion

2.如果存在则显示svn包及版本号信息等
如:subversion-1.7.14-14.el7.x86_64

3.卸载:
yum remove subversion

如不存在则什么都不显示
二、安装subversion
1.安装
yum install -y subversion

2.检查是否安装成功
svnserve --version

3.出现类似以下版本号等信息说明安装成功
svnserve, version 1.7.14 (r1542130)
   compiled Apr 11 2018, 02:40:28

Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open source software, see http://subversion.apache.org/

The following repository back-end (FS) modules are available:

* fs_base : Module for working with a Berkeley DB repository.
* fs_fs : Module for working with a plain file (FSFS) repository.

Cyrus SASL authentication is available.
三、创建版本库
1. 创建版本库根目录:
mkdir /var/svn/svn-repos

2.创建分支目录:
mkdir /var/svn/svn-repos/trunk
trunk文件夹: 主干,我们一般把项目提交到此文件夹里面,在trunk中开发。
mkdir /var/svn/svn-repos/branches
branches文件夹:分支,我们一般把那些需要打分支,但是有可能会修改的项目代码,打分支到此目录。
mkdir /var/svn/svn-repos/tags
tags文件夹:分支,我们一般把那些阶段性(如迭代各期)的项目代码,打分支到此目录。

3.创建版本库:
svnadmin create /var/svn/svn-repos/trunk/demo
demo为新建的版本库目录(可以是项目名称或公司名称)

4.目录介绍:
cd /var/svn/svn-repos/trunk/demo/

conf:SVN版本库配置文件(帐号密码权限等)

conf/authz:负责账号权限的管理,控制账号是否读写权限

conf/passwd:负责账号和密码的用户名单管理

conf/svnserve.conf:svn服务器配置文件

db:版本库数据存储

locks:跟踪目录的访问者
四、配置文件
authz:
1.vim conf/authz(编辑)
2.dG(全部删除)
3.i(insert)
4.粘贴如下:
----------------
# 不可删除
[groups]
# 为用户组 例如admin = frank, maggie, benny
admin = frank
# 代表所有
[/]
# 表示admin用户组的成员可以对/读写操作
@admin = rw
# 针对某个库进行配置
[/doc]
# 表示admin用户组的成员可以对/读写操作
@admin=rw
----------------------
5.Esc :wq

passwd:
1.vim conf/passwd
2.dG
3.i
4.粘贴如下:
----------------------	
#  不可删除
[users]
# 格式: 用户名 = 密码
frank = 123456
----------------------
5.Esc :wq

---------------------------------------

svnserve.conf:
1.vim conf/svnserve.conf
2.dG
3.i
4.粘贴如下:
--------------------
# 不可删除
[general]
# 匿名用户权限(none:拒绝, write:读写, read:只读权限)
anon-access = none
# 鉴权用户访问
auth-access = write
# 用户信息配置文件(也可以是绝对路径)
password-db = passwd
# 权限配置文件
authz-db = authz
# 。。。。
realm = My First Repository
# force-username-case = none

[sasl]
# use-sasl = true
# min-encryption = 0
# max-encryption = 256
--------------------
5.Esc :wq
五、开启防火墙
防火墙开启 关闭 与 查看状态
systemctl start firewalld
systemctl stop firewalld
systemctl status firewalld

防火墙配置3690端口:
1: sudo firewall-cmd --permanent --add-service=telnet
2: sudo firewall-cmd --permanent --add-port=3690/tcp
3: sudo firewall-cmd --reload
六、启动服务
1.启动
svnserve -d -r /var/svn/svn-repos

2.查看进程,检验是否启动成功
ps -ef | grep svn
七、winddows chekout
工具推荐:
TortoiseSVN  安装配置略

检出地址格式:  
svn://项目ip:3690/xxxx 

centos 安装 最新 svn centos7安装svn服务器_linux

notes by frank