- 介绍
Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库 (repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。
- 安装
yum install subversion
查看版本
# svnserve --version
svnserve, version 1.4.2 (r22196)
compiled Aug 10 2009, 17:54:46
Copyright (C) 2000-2006 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository back-end (FS) modules are available:
* fs_base : Module for working with a Berkeley DB repository.
* fs_fs : Module for working with a plain file (FSFS) repository.
- 创建版本库
mkdir /u02/svn -p
svnadmin create /u02/svn/tesvn
tessvn为版本库的名字
- 配置
# ll
total 12
-rw-r--r-- 1 root root 684Mar 8 14:26 authz
-rw-r--r-- 1 root root 309Mar 8 14:26 passwd
-rw-r--r-- 1 root root 1457 Mar 8 14:26 svnserve.conf
# pwd
/u02/svn/tesvn/conf
svnserve.conf: svn服务配置文件。
passwd: 用户名口令文件。
authz: 权限配置文件。
svnserve.conf 文件, 该文件配置项分为以下5项:
anon-access: 控制非鉴权用户访问版本库的权限。
auth-access: 控制鉴权用户访问版本库的权限。
password-db: 指定用户名口令文件名。
authz-db:指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。
realm:指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的认证域相同,建议使用相同的用户名口令数据文件
- svnserve.conf文件
password-db = passwd
authz-db = authz
- passwd文件
[users]
harry = harryssecret
sally = sallyssecret
- authz文件
[groups]
harry_and_sally = harry,sally
[tesvn:/]
@harry_and_sally = rw
* = r
tesvn对应版本库名称
/对应svn的目录,/u02/svn
- 启动、停止SVN服务
svnserve -d -r /u02/svn
-d表示后台运行
-r 指定根目录是/u02/svn
停止SVN服务
ps -aux |grep svn
kill -9 进程杀掉
- TortoiseSVN客户端测试
下载地址http://tortoisesvn.net/downloads.html
上传的文件保存到
/u02/svn/tesvn/db/revs目录下,以内部数据库的结构保存