依赖包:

主要安装包: subversion-1.14.0.tar.gz http://subversion.apache.org/download/

SVN基础依赖包: apr-1.7.0.tar.gz http://apr.apache.org/download.cgi

SVN基础依赖包: apr-util-1.6.1.tar.gz http://apr.apache.org/download.cgi

SVN基础依赖包: zlib-1.2.11.tar.xz http://linux.softpedia.com/get/Programming/Libraries/zlib-159.shtml

数据库依赖包: sqlite-autoconf-3320300.tar.gz http://sqlite.org/download.html

apr-util依赖包: expat-2.0.1.tar.gz http://www.linuxfromscratch.org/blfs/view/6.3/general/expat.html

1、上传至相应目录,解压

cd /home/
mkdir svn

压缩包上传到svn,解压
tar -xzvf subversion-1.14.0.tar.gz
tar -xzvf apr-1.7.0.tar.gz
tar -xzvf apr-util-1.6.1.tar.gz
tar -xzvf zlib-1.2.11.tar.xz
tar -xzvf sqlite-autoconf-3320300.tar.gz
tar -xzvf expat-2.0.1.tar.gz

2、安装apr

  1. 进入apr-1.7.0文件夹下
cd apr-1.7.0
  1. 执行安装命令
./configure prefix=/home/svn/apr-1.7.0
make
make install

3、安装apr-util

  1. 安装expat库
cd expat-2.0.1
./configure
make
make install
  1. 进入apr-util-1.6.1文件夹下
cd apr-util-1.6.1
  1. 安装
./configure prefix=/home/svn/apr-util-1.6.1 --with-apr=/usr/local/apr
make
make install

4、安装zlib

  1. 进入zlib-1.2.11文件夹下
cd zlib-1.2.11
  1. 安装命令
./configure
make
make install

5、将sqlite-autoconf-3320300改名为sqlite-amalgamation并移动到subversion-1.14.0文件夹下

mv sqlite-autoconf-3320300 ./subversion-1.14.0/sqlite-amalgamation

6、安装subversion

  1. 进入subversion-1.14.0文件夹下
cd subversion-1.14.0
  1. 安装命令
./configure prefix=/home/svn/subversion-1.14.0 --with-apr=/home/svn/apr-1.7.0 --with-apr-util=/home/svn/apr-util-1.6.1 --with-zlib=/home/svn/zlib-1.2.11 --with-lz4=internal --with-utf8proc=internal

make
make install
  1. 安装完成,添加环境变量path
vi .bash_profile 
PATH=/home/svn/subversion-1.14.0/bin:$PATH
#生效配置文件
source .bash_profile

7、配置SVN仓库

  1. 创建库目录
mkdir -p myproject
  1. 添加配置文件
svnadmin create /home/svn/myproject
  1. 进入配置文件所在目录
cd myproject/conf
vi subversion.conf
  1. 修改配置文件
#将文件中以下内容前的删除并顶格

[general]
anon-access = none #使非授权用户无法访问
auth-access = write #使授权用户有写权限
password-db = passwd #指明密码文件路径
authz-db =authz #访问控制文件
realm = repos #认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
  1. 修改passwd文件用于创建用户
vi passwd
[users]
admin =admin # 用户名1 = 密码1
user =user # 用户名2 = 密码2
  1. 修改authz文件用于管理用户权限
vi authz

按格式输入权限内容
[库名:目录]
用户名1 = 权限
用户名2 = 权限

例如:
[myproject:/]
admin = rw
user =r
  1. 启动服务
svnserve -d --listen-port 3690  -r /home/svn
  1. 查看svn服务
ps - ef|grep svn
  1. 防火墙端口
firewall-cmd --zone=public --add-port=3690/tcp --permanent
#重启防火墙
systemctl restart firewalld
  1. 访问svn服务
    svn://svn服务器IP地址/myproject