云服务器如何搭建 SVN 服务器

SVN是一个版本控制系统,相对于的 RCS 、 CVS ,采用了分支管理系统,它的设计目标就是取代 CVS 。

一、安装SVN

yum install -y subversion

二、创建SVN版本库

  • 创建项目版本库

mkdir -p /data/svn/myproject
svnadmin create /data/svn/myproject

三、配置SVN信息

1、配置文件说明

版本库中的配置目录 conf 有三个文件:

  • authz 是权限控制文件
  • passwd 是帐号密码文件
  • svnserve.conf 是SVN服务综合配置文件

2、配置权限配置文件

编辑authz权限控制文件

[groups]
//用户组
admin = admin,root,test
//用户组所对应的用户
[/]
//库目录权限
@admin = rw
//用户组权限
*=r
//非用户组权限

3、配置账号密码文件
编辑passwd账号密码文件

[users]
//harry = harryssecret
//sally = sallyssecret
admin = 123456
root = 123456
test = 123456

4、配置 SVN 服务综合配置文件
编辑SVN综合配置文件svnserve.conf

[general]
// force-username-case = none
// 匿名访问的权限 可以是read、write,none,默认为read
anon-access = none
//使授权用户有写权限
auth-access = write
//密码数据库的路径
password-db = passwd
//访问控制文件
authz-db = authz
//认证命名空间,SVN会在认证提示里显示,并且作为凭证缓存的关键字
realm = /data/svn/myproject

[sasl]

四、启动 SVN 服务

1、启动SVN

svnserve -d -r /data/svn

2、checkout SVN项目

mkdir -p /data/workspace/myproject
svn co svn://(你的IP)/myproject /data/workspace/myproject --username root --password 123456 --force --no-auth-cache

3、提交文件到 SVN 服务器
从本地提交文件到 SVN 服务器,其中root密码为/data/svn/myproject/conf/passwd文件存储的密码

cd /data/workspace/myproject
echo test >> test.txt
svn add test.txt
svn commit test.txt -m 'test'

提交成功后可以通过如下命令从本地项目删除文件

cd /data/workspace/myproject
rm -rf test.txt

删除后可以通过 SVN 服务器恢复

cd /data/workspace/myproject
svn update

最后就大功告成!!!