CentOS下安装SVN,配置版本库,添加新用户

系统环境:CentOS-7
安装方式:yum install
安装软件:系统自动下载SVN软件

一、安装SVN

1、检查是否安装了低版本的SVN

[root@localhost /]# rpm -qa subversion

2、卸载旧的SVN

[root@localhost modules]# yum remove subversion

3、安装

[root@localhost ~]# yum install subversion[root@localhost ~]# svnserve --versionsvnserve,版本 1.7.14 (r1542130)
   编译于 Apr 11 2018,02:40:28版权所有 (C) 2013 Apache 软件基金会。
此软件包含了许多人的贡献,请查看文件 NOTICE 以获得更多信息。Subversion 是开放源代码软件,请参阅 http://subversion.apache.org/ 站点。

下列版本库后端(FS) 模块可用: 

* fs_base : 模块只能操作BDB版本库。
* fs_fs : 模块与文本文件(FSFS)版本库一起工作。

Cyrus SASL 认证可用。

二、创建版本库

subversion默认会把/var/svn作为数据的根目录。我们在其下面创建版本库

[root@localhost ~]# mkdir -p /var/svn

创建学员要用得版本库

[root@localhost ~]# svnadmin create /var/svn/student

执行上面的命令后,自动建立repositories库,查看/opt/svn/repositories 文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。后期要删除的话,可以用你比较删除的rm

[root@localhost ~]# rm -rf /var/svn/student

三、配置SVN相关文件

进入上面生成的文件夹conf下,进行配置

[root@localhost ~] cd /opt/svn/student/conf
  • authz 文件是权限控制文件

  • passwd 是帐号密码文件

  • svnserve.conf SVN服务配置文件

1、配置主配置文件

每个版本库创建之后都会生成svnserve.conf主要配置文件

[root@localhost ~] vim svnserve.conf

打开配置文件对应的注释也可以,或是直接粘贴下面代码:

[general]anon-access = noneauth-access = writepassword-db = passwdauthz-db = authzrealm = /var/svn/student
配置项配置说明
anon-access = none匿名用户没有访问权限
auth-access = write授权用户可写
password-db = passwd指定文件作为账号密码文件
authz-db = authz指定权限配置文件名
realm = wangwa认证空间名,版本库所在目录

2、创建SVN的使用账户

编辑账户密码文件 [root@localhost ~] vim passwd 按照下图方式添加账户和对应的密码信息

[users]# 账户 = 密码# sally = sallyssecretadmin = adminjack = jacktiechui = tiechui

3、配置权限控制authz

[root@localhost ~] vim authz

admin、jack账户属于admin组,tiechui属于test组。[student:/]表示根目录(/var/svn/student),student: 对应前面配置的realm = student。当然r为读,w为写权限

[groups]
admin = admin,jacktest = tiechui

[student:/]
@admin = rw

[student:/test]
@test = rw

四、启动,查看和停止SVN服务

1、启动SVN服务

[root@localhost ~] svnserve -d -r /var/svn

-d : 守护进程,即服务在后台运行
-r : 指定svn数据根目录

2、查看SVN服务

[root@localhost conf]# ps aux|grep svnserveroot      2029  0.0  0.1 185116  1248 ?        Ss   16:27   0:00 svnserve -d -r /var/svn
root      2448  0.0  0.0 112728   992 pts/1    S+   17:11   0:00 grep --color=auto svnserve

3、停止SVN服务

[root@localhost conf]# killall svnserve    //停止

或者使用或 kill -9 进程id

4、关闭防火墙或开启端口

首先要明确CentOS7的默认防火墙为firewallD。subversion的默认端口为3690

[root@localhost conf]# systemctl stop firewalld

或者在防火墙里永久开启3690端口

[root@localhost conf]# firewall-cmd --zone=public --list-ports8811/tcp
[root@localhost conf]# firewall-cmd --zone=public --add-port=3690/tcp --permanentsuccess
[root@localhost conf]# firewall-cmd --reloadsuccess
[root@localhost conf]# firewall-cmd --zone=public --list-ports8811/tcp 3690/tcp
[root@localhost conf]#

5、设置开机启动服务

注意:根目录必须是/var/svn

[root@localhost conf]# systemctl enable svnserve.service

五、服务器检出SVN

可利用系统的计划任务来定时检出代码

[root@localhost conf] svn checkout svn://192.168.223.129/student


点赞(0) 打赏

Comment list 共有 0 条评论

暂无评论
发表
评论
返回
顶部