SVN配置–服务器端(linux)
本教程配置说明
- 目的: 实现代码统一管理
1. 下载所需的源码包
subversion-deps-1.6.17.tar.gz svn 的支持库之类的文件
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.17.tar.gz
- 1
- 1
subversion-1.6.17.tar.gz svn 的主程序
wget http://subversion.tigris.org/downloads/subversion-1.6.17.tar.gz
- 1
- 1
2. 源码编译安装
这两个要解压在同一个目录下
tar zxvf subversion-deps-1.6.17.tar.gz tar xvf subversion-1.6.17.tar.gz cd subversion-1.6.17 ./configure --prefix=/opt/svn
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
编译源代码:
make make install
- 1
- 2
- 1
- 2
3. 配置环境变量
vi /etc/profile
- 1
- 1
在/etc/profile 最后加入:
export PATH=$PATH:/opt/svn/bin
- 1
- 1
检测是否安装成功
svnserve --version
- 1
- 1
显示如下信息则表示安装成功。
svnserve, version 1.6.17 (r1128011) compiled Mar 23 2012, 16:57:41
4. 创建SVN仓库
A. 创建svn库testsvn
mkdir /var/svn
- 1
- 1
B. 进入svn目录下
cd /var/svn
- 1
- 1
C. 创建testsv目录
svnadmin create testsv
- 1
- 1
D. 成功创建仓库testsv后,仓库下可查看到相关目录
cd testsv ls
- 1
- 2
- 1
- 2
在仓库testsv下若可以看到如下目录,说明仓库创建成功:
conf db format hooks locks README.txt
查看仓库的配置文件:
cd conf/ ls
- 1
- 2
- 1
- 2
查看仓库的配置文件有三个:
authz passwd svnserve.conf
5. 配置版本库信息 ##
A. 配置 svnserve.conf
在conf目录下,编辑:
vi svnserve.conf
- 1
- 1
添加如下代码:
[general] anon-access = none auth-access = write password-db = passwd authzauthz-db = authz realm = testsv [sasl]
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
Note:
* 主要添加authz、passwd的路径,以及库的名字 * 该路径指的是相对路径,指的是当前仓库下conf目录下。如果有需要,可以将该路径设置为绝对路径B. 定义用户密码
vim /var/svn/testsv/conf/passwd
- 1
- 1
添加如下:
[users] #这个是原文件中就有的哟~wzf = 123456 testuser = testsv123456testuser1 = 123456
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
含义解释: “=”左边即为用户名, “=”右边即为该用户名的密码。只有该文件下的用户才有资格登陆该仓库。
C. 定义版本库访问权限
编辑 authzvi /var/svn/testsv/conf/authz
- 1
- 1
编辑如下:
[aliases] Average[groups]admin=wzfusers=testuser,testuser1 [/]*= @admin=rw@users=r
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
含义解释
* 定义admin组,该组下的成员包括wzf * 定义users组,该组下的成员包括testuser,testuser1 * 多个成员之间用”,”隔开 ,可以不为用户划分到具体某个组 * admin组成员在仓库根目录/ 下具有读’r’和写’w’的权利 * users组成员在仓库根目录/ 下只具有读’r’的权利 * 除了admin和users组成员外,其他用户在仓库根目录/ 不具备任何权利6. svn的启动
建立启动svn 的用户
useradd svn passwd svn
- 1
- 2
- 1
- 2
根据提示为用户svn 设置密码
7. 设置仓库群组 ##
允许用户svn 访问版本库
chown -R svn:svn /var/svn
- 1
- 1
8. 启动svn
用设定帐户启动
su svnsvnserve -d -r /var/svn/ --listen-port 9999
- 1
- 2
- 1
- 2
其中:
su svn 表示以用户svn 的身份启动svn -d 表示以daemon 方式(后台运行)运行 –listen-port 9999表示使用9999 端口,可以换成你需要的端口。但注意,使用1024以下的端 口需要root 权限 -r 指定根目录是/var/svn客户端(windows):
1. 安装windows客户端
如果没有TortoiseSVN客户端,可以去这里下载:tortoisesvn/downloads.html,根据自己的实际情况下载对应版本,点击这里下载。
2.本地同步仓库代码
- 选定本地的一个文件夹存放从服务器下载的代码。
- 然后右击这个文件夹,选择“SVN CheckOut…”。
3.登陆仓库
填写仓库地址(URL),其他地方可以不用修改。Version处可以修改,表示从指定的版本号开始。
* 本文中的URL为svn://10.10.108.107:9999/testsv/) 点击OK后
* 输入账号,密码即可
具体的可参考