基于 CentOS 7 搭建 SVN
阅读原文时间:2023年10月04日阅读:1

⒈安装 SVN 服务端

  1.安装 Subversion

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

yum install -y subversion

⒉创建 SVN 版本库

  1.创建项目版本库

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

⒊配置 SVN 信息

  配置目录  /data/svn/myproject/conf

  在配置目录下有三个文件,分别是  

  • authz 是权限控制(配置)文件

  • passwd 是帐号密码文件

  • svnserve.conf 是SVN服务综合配置文件

      1.编辑authz,内容参考如下

[groups]
#用户组
admin = admin,root,test
#用户组所对应的用户
[/]
#版本库根目录权限
@admin = rw #指admin用户组有读写权限
* = #指除此之外的没有任何权限
#用户组权限
*=r
#非用户组权限

  2.配置账号密码文件 passwd,内容参考如下:

[users]

harry = harryssecret

sally = sallyssecret

admin = 123456
root = 123456
test = 123456

  3.配置 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://127.0.0.1/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