Linux系统SVN源码安装与配置全流程指南
一、环境准备
-
系统要求
- CentOS 7及以上版本
- 需安装GCC编译工具链
-
依赖项
- APR/APR-UTIL(Apache可移植运行库)
- SQLite(嵌入式数据库)
- zlib(数据压缩库)
二、下载及安装
1. SVN源码下载
下载地址: http://subversion.apache.org/download#recommended-release
2. 安装
安装步骤如下:
1、先在服务器创建一个目录: mkdir -p /data/program/
2、上传SVN安装包,然后解压tar:tar -zxvf subversion-1.14.5.tar.gz
3、进入安装包:cd subversion-1.14.5
4、在该文件目录下执行SVN安装命令:./configure --prefix=/data/program/svn
,若上述命令执行未报错,继续执行下面命令:进行安装:make 安装 make install
(1)如果执行./configure --prefix=/data/program/svn
这个命令,出现下面这个错 no acceptable C compiler fount in $PATH,是因为缺少gcc,需要安装一下:
安装gcc:yum install gcc
(2)如果执行./configure --prefix=/data/program/svn
命令提示下面这个错 no suitable APR found,是因为找不到APR,需要下载安装apr和apr-util
下载地址:https://archive.apache.org/dist/apr/
下载好apr和apr-util后,上传到服务器,进行解压安装。
tar -zxvf apr-1.6.5.tar.gz
cd apr-1.6.5
./configure --prefix=/usr/local/apr
make && make install
tar -zxvf apr-util-1.6.3.tar.gz
cd apr-util-1.6.3
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install
安装依赖完成后:继续进行SVN的安装,进入subversion-1.14.0目录,因为之前安装了apr和apr-util,所以这次执行的./configure后面需要加上这两个`
./configure --prefix=/data/program/svn --with-apr=/data/program/apr --with-apr-util=/data/program/apr-util
(3)若sqlite报错,是sqlite版本过低,需要下载安装比较新的sqlite:
sqlite-autoconf下载地址: https://www.sqlite.org/download.html
下载好后,上传到服务器,解压安装sqlite-autoconf。
tar -zxvf sqlite-autoconf-3490100.tar.gz
cd sqlite-autoconf-3490100
./configure --prefix=/usr/local/sqlite
make && make install
安装sqlite-autoconf成功之后,继续执行SVN安装:./configure --prefix=/data/program/svn --with-apr=/data/program/apr --with-apr-util=/data/program/apr-util --with-sqlite=/data/program/sqlite
(4)若zlib报错:
下载zlib地址: http://www.zlib.net/
进入之后往后找,找到下面这个圈住的地方,点击下载:
下载完成之后上传到服务器,解压安装,如下:
tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure --prefix=/usr/local/zlib
make && make install
安装好zlib之后,继续安装SVN,执行命令:./configure --prefix=/data/program/svn --with-apr=/data/program/apr --with-apr-util=/data/program/apr-util --with-sqlite=/data/program/sqlite --with-zlib=/data/program/zlib
执行之后如果报下面这个错 configure: error: Subversion requires LZ4 >= r129, or use --with-lz4=internal,需要在./configure之后加上 --with-lz4=internal 选项:
--with-apr=/data/program/apr --with-apr-util=/data/program/apr-util --with-sqlite=/data/program/sqlite --with-zlib=/data/program/zlib --with-lz4=internal
执行之后如果报下面这个错configure: error: Subversion requires UTF8PROC; install it
or re-run configure with “–with-utf8proc=internal”,需要在./configure之后加上
–with-utf8proc=internal 选项:--with-apr=/data/program/apr --with-apr-util=/data/program/apr-util --with-sqlite=/data/program/sqlite --with-zlib=/data/program/zlib --with-lz4=internal --with-utf8proc=internal
**安装成功以后执行:cd subversion-1.14.5 执行 make和make install
3. 环境变量配置
SVN安装成功之后,加入svn path:
进入配置文件:vi /etc/profile
在文件最后面加上下面这个命令:export PATH=/data/program/svn/bin
保存退出后,刷新下文件,执行命令:source /etc/profile**
然后输入: svnserve --version
,如果能看到svn版本就已经安装成功了。
SVN创建完成以后进行代码库,配置文件,添加用户名权限等,见下文:
三、最终编译安装SVN命令
tar -zxvf subversion-1.14.0.tar.gz
cd subversion-1.14.0
./configure \
--prefix=/usr/local/svn \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util \
--with-sqlite=/usr/local/sqlite \
--with-zlib=/usr/local/zlib \
--with-lz4=internal \
--with-utf8proc=internal
make && make install
四、配置SVN
1. 创建仓库
svnadmin create /home/svn
2. 配置认证文件
vi /home/svn/conf/svnserve.conf
修改以下参数(取消文件内的注释并添加svn路径):
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
realm = /home/svn
3. 设置用户密码
vi /home/svn/conf/passwd
添加用户:
[users]
admin = admin123
user1 = password1
4. 配置权限控制
vi /home/svn/conf/authz
设置权限规则(以群组的方式创建):
[groups]
admin_group = admin
注:[/] 必须输入,否则报错
末尾加上:
[/]
@admin_group = rw
user1 = r
五、启动与验证
1. 启动服务
svnserve -d -r /home/svn
2. 验证安装
svnserve --version
# 应显示版本信息:svnserve, version 1.14.0
3. 测试连接
svn list svn://localhost:3690 --username admin --password admin123
# 应列出仓库内容
六、常见问题处理
-
缺少GCC编译器
yum install gcc -y
-
APR未找到错误
确保--with-apr
参数指向正确路径:--with-apr=/usr/local/apr
-
SQLite依赖问题
检查SQLite安装路径是否正确:--with-sqlite=/usr/local/sqlite
-
端口冲突
终止冲突进程:lsof -i :3690 kill -9 [PID]
七、客户端访问
使用TortoiseSVN客户端,输入仓库地址:
svn://服务器IP:3690
输入用户名密码即可检出仓库。
八、服务管理
- 停止服务:
killall svnserve
- 重启服务:
svnserve -d -r /home/svn
通过以上步骤,您可以在Linux系统上完成SVN的完整安装与配置,实现团队协作开发的版本控制管理。