本文作者:阿豪

Centos7部署SVN版本控制系统

阿豪 09-30 232
Centos7部署SVN版本控制系统摘要: Subversion是一个自由开源的版本控制系统。在Subversion管理下,文件和目录可以超越时空。Subversion将文件存放在中心版本库里,这个版本库很像一个普通的文件服...

Subversion是一个自由开源的版本控制系统。在Subversion管理下,文件和目录可以超越时空。Subversion将文件存放在中心版本库里,这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况,这样就可以借此将数据恢复到以前的版本,并可以查看数据的更改细节。正因为如此,许多人将版本控制系统当作一种神奇的“时间机器”。

安装SVN

yum install subversion -y

运行此命令会全自动安装svn服务器相关服务和依赖

image.png

查看SVN版本。

svnserve --version

image.png

配置SVN

1、创建版本库根目录(/data/svn为自定义目录

mkdir -p /data/svn

2、创建版本库

cd  /data/svn
svnadmin create /data/svn/svnrepos

3、查看自动生成的版本库文件

cd svnrepos
ls

image.png

Subversion目录说明

目录说明
confSVN版本库的配置文件(版本库的访问账号、权限等)
db存放所有的版本控制数据文件
format一个文本文件,文件中只包含一个整数,表示当前文件库配置的版本号
hooks放置hook脚本文件
locks用来追踪存取文件库的客户端
README.txt阅读指南文件

4、设置SVN版本库的账号和密码

进入到版本库目录

cd /data/svn/svnrepos
cd conf/

运行 vi 命令,打开用户配置文件,

vi passwd

i 键进入编辑模式,移动光标至 [users] 下,添加用户账号和密码

说明:添加账号和密码的格式为:账号 = 密码。例如,userTest(账号) = passWDTest(密码),如下图所示(注意等号两端要有一个空格)。

image.png

Esc 键退出编辑模式,并输入 :wq 保存并退出

5、设置账号的读写权限

打开权限控制文件

vi authz

键进入编辑模式,移动光标至文件末尾,并添加如下代码(其中,userTest表示账号,r表示读权限,w表示写权限

image.png

Esc 键退出编辑模式,并输入 :wq 保存并退出

6、修改SVN服务配置

打开SVN服务配置文件

vi svnserve.conf

i 键进入编辑模式,移动光标找到如下配置行,删除行前面的注释符#和空格

anon-access = read 匿名用户可读,您也可以设置 anon-access = none,不允许匿名用户访问。设置为 none,可以使日志日期正常显示

auth-access = write #授权用户可写

password-db = passwd #使用哪个文件作为账号文件

authz-db = authz #使用哪个文件作为权限文件

realm = /var/svn/svnrepos #认证空间名,版本库所在目录

image.png

Esc 键退出编辑模式,并输入 :wq 保存并退出

7、启动SVN 直接指定到版本库

svnserve -d -r /data/svn/svnrepos/

说明:运行killall svnserve命令可停止SVN服务

killall命令不存在参考则安装yum install psmisc -y

8、查看SVN服务是否开启

ps -ef |grep svn

如果返回结果如下图所示,表示SVN服务已经开启。

image.png

到此,配置已经全部完成,账号信息已经添加成功 更改 svnserver.conf 时需要重启SVN服务才生效,更改authz,passwd文件时则不需要重启服务,

文章版权及转载声明

作者:阿豪本文地址:https://www.ahaoyw.com/article/644.html发布于 09-30
文章转载或复制请以超链接形式并注明出处阿豪运维

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏