Linux搭建SVN服务器 - 支持多个项目

本文详细介绍如何在服务器上安装Subversion (SVN) 服务端,并创建及配置多个版本库,包括设置用户权限和启动验证版本库。

一、安装SVN服务端subversion

1. 安装subversion

yum install subversion

2. 查看安装版本,检查安装是否成功

svnserve --version

我的版本为    1.6.11

3. 查看安装位置

rpm -ql subversion

二、创建版本库

1、创建用于存放版本库的目录(此目录为所有项目的根目录)

mkdir -p /usr/local/svnRepo

2、根据实际情况创建多个项目路径

mkdir -p /usr/local/svnRepo/project1

mkdir -p /usr/local/svnRepo/project2

3、创建多个svn版本库,与刚刚创建的项目路径一一对应

svnadmin create /usr/local/svnRepo/project1

svnadmin create /usr/local/svnRepo/project2

4、创建完后,每个版本库目录下会生成一些文件


三、配置版本库(对于每个版本库根据实际情况分别进行配置)

在每个版本库中的conf目录如下:


其中

| - authz    权限控制文件

| - passwd    帐号密码文件

| - svnserve.conf    SVN服务配置文件

为了后续增加项目方便,创建公共的用户、权限配置文件,放到版本库公共路径/usr/local/svnRepo下;

1、创建公共的passwd文件,加入用户,格式就是“用户名=密码”,如:  

vim /usr/local/svnRepo/svn_passwd
[users]
admin = 123
test = 123

2、创建公共的authz文件,加入用户权限,如:

vim /usr/local/svnRepo/svn_authz
[aliases]

[groups]
admins = fanjinpeng, daihaijiao

[project1:/]
@admins = rw
* =

[project2:/]
@admins = rw
* =

创建的admins用户组中包含admin和test两个用户,而且这两个用户对该版本库根目录有读写权限(即最高权限),也可以根据实际情况分别对不同的用户开放不同的路径权限;

3、修改每个项目中conf路径下的svnserve.conf文件,对刚才公共文件的引用

vim /usr/local/svnRepo/project1/conf/svnserve.conf

anon-access = none #匿名用户不可读
auth-access = write #授权用户可写
password-db = /usr/local/svnRepo/svn_passwd #使用公共文件作为账号文件
authz-db = /usr/local/svnRepo/svn_authz #使用公共文件作为权限文件
realm = /usr/local/svnRepo/project1 # 认证空间名,版本库所在目录

在project2中做同样的修改;

四、启动并验证版本库

1、启动

如果在一台服务器上同时启动多个项目版本库,那么启动路径必须是所有项目仓库的根路径,比如:

/usr/local/svnRepo/project1
/usr/local/svnRepo/project2
对应

/usr/local/svnRepo/

启动命令

svnserve -d -r  /usr/local/svnRepo/

2、验证

(1)打开Windows SVN浏览器客户端


输入URL:

svn://SVN所在服务器IP地址/project1或svn://SVN所在服务器IP地址/project2


(2)或者在本地任一文件夹下右键 - “SVN Checkout...”


3、如果SVN服务器部署在云服务器上,需要打开3690端口


### 安装和配置Subversion (SVN) 服务器Linux环境下搭建Subversion (SVN) 服务器通常涉及几个关键步骤,包括安装必要的依赖项、编译和安装Subversion本身,以及创建和管理版本库。以下是一个详细的指南: #### 准备工作 1. **安装依赖库**: 在开始之前,请确保系统中已安装了必要的开发工具和库文件,例如`gcc`, `make`, `libtool`, `expat`, `zlib`, `apr`, 和 `apr-util`等。 2. **下载源码包**: 下载Subversion及其依赖的源代码包,如APR、APR-Util、ZLib等。 3. **解压并进入目录**: 将下载的源代码包解压,并进入相应的目录进行编译安装。 #### 编译安装Subversion 1. **配置Subversion**: 使用`./configure`命令来配置Subversion的安装路径和其他选项。例如,可以指定前缀为`/home/svn/subversion-1.14.0`,并且链接到特定版本的APR、APR-Util和ZLib[^1]。 ```bash [root@localhost 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 ``` 2. **编译和安装**: 运行`make`命令来编译源代码,然后使用`make install`命令来安装编译好的程序。 #### 创建版本库 1. **创建版本库目录**: 创建一个用于存放版本库的目录,比如`/home/svn/repos`。 2. **初始化版本库**: 使用`svnadmin create`命令来创建一个新的版本库。 ```bash svnadmin create /home/svn/repos/myproject ``` 3. **配置权限**: 修改版本库目录下的`conf/authz`文件来设置用户权限。 4. **启动服务**: 使用`svnserve`命令来启动服务,默认情况下会在端口3690监听请求。 ```bash svnserve -d -r /home/svn/repos ``` #### 配置客户端访问 1. **安装客户端软件**: 在客户端机器上安装SVN客户端软件,如TortoiseSVN或者MyEclipse中的SVN插件[^3]。 2. **连接版本库**: 使用客户端软件连接到版本库地址,通常是`svn://server_ip/path_to_repo`。 #### 测试与维护 1. **测试连接**: 确保可以从客户端成功连接到版本库,并且能够执行基本的操作,如提交和更新。 2. **定期备份**: 定期对版本库进行备份,以防数据丢失。 3. **监控和日志**: 监控服务运行状态,并检查日志文件以排查可能出现的问题。 通过以上步骤,可以在Linux环境下成功搭建一个功能完整的Subversion (SVN) 服务器。这个过程涉及到的技术细节较,需要有一定的Linux系统管理和网络知识基础。此外,还需要注意安全性和性能优化等方面的问题,以保证版本控制系统的稳定运行。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值