一、SVN服务器安装
1、采用源文件编译安装,源文件共两个,为:
subversion-1.6.12.tar.bz2 (subversion 源文件)
subversion-deps-1.6.12.tar.bz2 (subversion依赖文件)
注意文件版本必须一致,否则很容易产生各种奇怪的问题

2、上传以上两个文件到服务器上,解压

cd /root/tmps

tar -xvjf subversion-1.6.12.tar.bz2

tar -xvjf subversion-deps-1.6.12.tar.bz2

注:解压后生成 subversion-1.6.12 子目录,两个压缩包解压后都会自动放到此目录下,不用手动更改。

3、进入解压目录,编译安装

cd subversion-1.6.12

./configure --prefix=/usr/local 进行配置设定并指明安装目录. 注意prefix前是两个减号. 默认不带 BDB包, 所以默认使用的是FSFS模式. 若想使用BDB模式需另外下载BDB包.建议使用FSFS模式.

make

make install

4、添加环境变量

vim /etc/profile

SVNPATH=$PATH:/usr/local/bin
export SVNPATH
5、测试SVN是否安装成功,执行:

svnserve --version

如果显示版本信息, 则安装成功.

二、配置
1、建立版本库目录(可建立多个,新建库后以下各项都需重新配置。注意区别安装目录与版本库目录,以下 讲的都是版本库目录)

mkdirr -p /home/svndata/repos

2、 建立svn版本库(与上面目录对应)

svnadmin create /home/svndata/repos

执行此命令后svn自动在repos目录下添加必须的配置文件.
注意:版本库不同于一般的文件夹, 直接在操作系统上新建文件无法被SVN识别, 必须使用import等命 令将文件导入 版本库.
此为svn内部指令,create用于新建版本库。请使用svn help查看详细说明。

3、修改版本库配置文件

vim /home/svndata/repos/conf/svnserve.conf

配置如下:
[general]
anon-access = none # 使非授权用户无法访问
auth-access = write # 使授权用户有写权限
password-db = passwd # 指明密码文件路径
authz-db = authz # 访问控制文件
其它采用默认配置. 各语句都必须顶格写, 左侧不能留空格, 否则会出错.
指令简介:这是svn配置文件的格式,请按照以上格式书写。

4、配置用户

vim /home/svndata/repos/conf/passwd

[users]
wangdongy = tyaq23we
liuying = afw3ar2e
可以添加多个,此为用户用户名密码对

5、配置权限

vim /home/svndata/repos/conf/authz

[/]
wangdongy = rw
liuying = rw
指令简介:此配置文件采用“基于路径的授权”策略,中括号里指定路径,以下列出对各用户的授权。包括只读r, 读写rw。没有列出的用户,则不允许访问。还可以对用户分组,具体请参考svn手册

6、启动服务

svnserve –d –r /home/svndata/repos/ 启动服务, 以deamon方式运行。

-d表示以daemon方式(后台运行)运行
–r /home/svndata/repos/ 指定根目录是/home/svndata/repos/
Svn默认端口:3690