依赖包:主要安装包: 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
进入apr-1.7.0文件夹下
cd apr-1.7.0
执行安装命令
./configure prefix=/home/svn/apr-1.7.0 make make install
3、安装apr-util
安装expat库
cd expat-2.0.1 ./configure make make install
进入apr-util-1.6.1文件夹下
cd apr-util-1.6.1
安装
./configure prefix=/home/svn/apr-util-1.6.1 --with-apr=/usr/local/apr make make install
4、安装zlib
进入zlib-1.2.11文件夹下
cd zlib-1.2.11
安装命令
./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
进入subversion-1.14.0文件夹下
cd subversion-1.14.0
安装命令
./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
安装完成,添加环境变量path
vi .bash_profile PATH=/home/svn/subversion-1.14.0/bin:$PATH #生效配置文件 source .bash_profile
7、配置SVN仓库
创建库目录
mkdir -p myproject
添加配置文件
svnadmin create /home/svn/myproject
进入配置文件所在目录
cd myproject/conf vi subversion.conf
修改配置文件
#将文件中以下内容前的删除并顶格 [general] anon-access = none #使非授权用户无法访问 auth-access = write #使授权用户有写权限 password-db = passwd #指明密码文件路径 authz-db =authz #访问控制文件 realm = repos #认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
修改passwd文件用于创建用户
vi passwd
[users] admin =admin # 用户名1 = 密码1 user =user # 用户名2 = 密码2
修改authz文件用于管理用户权限
vi authz 按格式输入权限内容 [库名:目录] 用户名1 = 权限 用户名2 = 权限 例如: [myproject:/] admin = rw user =r
启动服务
svnserve -d --listen-port 3690 -r /home/svn
查看svn服务
ps - ef|grep svn
防火墙端口
firewall-cmd --zone=public --add-port=3690/tcp --permanent #重启防火墙 systemctl restart firewalld
- 访问svn服务
svn://svn服务器IP地址/myproject