1、 下载linux安装包:
2、 以root用户登录
将subversion-1.4.0.tar.gz和subversion-deps-1.4.0.tar.gz传到服务器。
解压
tar xfvz subversion-1.4.0.tar.gz
tar xfvz subversion-deps-1.4.0.tar.gz
subversion-deps包有四个目录zlib apr apr-util neon这四个目录都是依赖包,编译subversion所必须的代码
cd subversion-1.4.0
./configure –prefix=/opt/svn –without-berkeley-db –with-zlib
(注:以svnserve方式运行,不加apache编译参数。以fsfs格式存储版本库,不编译berkeley-db)
make clean
make
make install
vi /etc/profile,在/etc/profile最后加入:
PATH=$PATH:/opt/svn/bin
export PATH
qw 保存完退出。
测试:
svnserve –version
如果显示如下,安装成功:
svnserve, version 1.4.0 (r21228)
compiled Oct 12 2006, 10:18:56
Copyright (C) 2000-2006 CollabNet.
Subversion is open source software, see [url]http://subversion.tigris.org/[/url]
This product includes software developed by CollabNet ([url]http://www.Collab.Net/[/url]).
The following repository back-end (FS) modules are available:
* fs_fs : Module for working with a plain file (FSFS) repository.
3、svn配置
建立版本库目录,可建多个:
mkdir -p /opt/svndata/repos1
mkdir -p /opt/svndata/repos2
建立版本库:
svnadmin create /opt/svndata/repos1
svnadmin create /opt/svndata/repos2
创建版本库后,在这个目录下会生成3个配置文件:
[root@singledb conf]# pwd
/u02/svn/davesvn/conf
[root@singledb conf]# ls
authz passwd svnserve.conf
(1)svnserve.conf: svn服务配置文件下。
(2)passwd: 用户名口令文件。
(3)authz: 权限配置文件。
svnserve.conf 文件, 该文件配置项分为以下5项:
anon-access: 控制非鉴权用户访问版本库的权限。
auth-access: 控制鉴权用户访问版本库的权限。
password-db: 指定用户名口令文件名。
authz-db:指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。
realm:指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的认证域相同,建议使用相同的用户名口令数据文件
配置svnserve.conf:
localhost repos1 # vi conf/svnserve.conf
[general]
anon-access = none #去掉“#”将值“read”修改为“none”
auth-access = write
password-db = passwd
authz-db = authz
注:去掉这几行前面的“#”并前面不可以有空格,否则会报错
配置 passwd:
localhost repos1 # vi conf/passwd
[users]
zhangyaowen = 12345 #添加的用户,后面为密码
配置 authz:
[aliases] #此选项按默认
[groups]
admin = zhangyaowen#设置组,及其成员,添加用户使用“,”号隔开,如 admin=zhangyaowen,zhangyaowen
[/] #设置根目录权限
liwei = rw
[svndata:/repos1] #设置版本库1的权限
liwei = rw
启动和停止SVN服务:
启动SVN服务:
localhost ~ # svnserve -d -r /svndata/
查看服务是否正常启动:
localhost ~ # netstat -auntp |grep 3690
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 20562/svnserve
为版本库加入资料
svn import directory/ file:///svndata/repos1 (把directory目录下的资料加入到版本库repos1里面)
停止SVN服务:
localhost ~ # killall svnserve
数据的迁移
1、在windows下备份数据(fpp为项目库名称)
svnadmin dump E:\Repositories\fpp > e:\svnbak\fpp.dump
注:必须用管理员权限才能操作
1、 上传备份好的文件到linux服务器上
2、 在linux下创建一个相同名称的项目库并且设置权限(具体参照安装步骤中的说明)
3、 导入备份文件
svnadmin load /svndata/fpp < fpp.dump
4、 在客户端检出项目