Linux及windows部署SVN以及权限控制


实验所需软件:

链接:https://pan.baidu.com/s/1d9-pAp02zToPmC2zCmOjsQ 提取码:pyw3

windows部署SVN:
windows部署较为简单下面这个链接可供大家参考,在此不做演示:
https://blog.csdn.net/qq_32786873/article/details/80535567


Linux部署SVN:
次安装适用于Redhat6/7 Centos6/7,其他版本不太清楚

  1. 使用yun安装svnserver:

    yum –y install subversion
  2. 查看svnserver安装位置:

    rpm –ql | grep subversion
    rpm –qa | grep svn
  3. 创建svn版本库目录:

    mkdir –p /opt/install_software/svn/svnrepos
  4. 创建版本库:
    svnadmin create /opt/install_software/svn/svnrepos/xxxx (xxx是版本库名字,可自定义,可以是中文)

5.查看创建的版本库配置文件:
Linux部署SVN及版本权限控制_第1张图片

6.修改配置文件:
每个版本库都会有相应的配置文件,所以修改每个版本库配置文件只对相应的版本库生效配置文件都在版本库目录的子目录conf底下,如:
Linux部署SVN及版本权限控制_第2张图片

authz:用户访问权限配置
passwd:用户密码配置
svnserver.conf:svn主配置文件

7.配置文件详解:
authz配置文件详解:

  • 使用[groups]对用户访问权限进行把控br/>[groups]权限配置,如:
    yanfa=zhangsan,lisi
    ceshi=maliu,wangwu
    yunwei=joneli,liuqiang
    [/]
    @yanfa=rw
    @ceshi=r
    @yunwei=rw

这个配置文件的意思表达,yanfa和yunwei组可以访问/目录,ceshi只可以读/目录,yanfa组中有zhangsan,lisi,ceshi组中有:maliu,wangwu,yunwei组中有:joneli,liuqing

  • 直接对[/]目录进行访问权限把控
    如:
    Linux部署SVN及版本权限控制_第3张图片
    其他的不用管,直接新建[/],在下面写上用户名,并写上权限即可,一定要注意括号中的/方向

  • 对库中子目录权限进行访问权限设置

如果想对和金融二期库中的二级目录进行权限控制的话,配置如下:
[/]
Jingli = rw
[/01_管理]
zhangsan = rw
* = r

[/02_可研]
wangwu = rw
maliu = rw
* = r

  • 下面一次目录以此类推:* = r表示所有人可以看,如果把这行注释了,则表示除有权限人以为的不可见次目录,子目录继承父目录权限,在此目录赋权的话,如果用户多,使用group分组效果会更好

passwd 配置文件详解:
Linux部署SVN及版本权限控制_第4张图片
前面是名字,后面是密码即可

svnserve.conf配置文件详解:
Linux部署SVN及版本权限控制_第5张图片
anon-access = none :匿名用户不可访问
anon-access = read :匿名用户可以读,不可以写
auth-access = write :授权用户可以写
password-db = passwd :密码所在的文件夹
authz-db = authz :访问权限的文件夹
realm = 和金融云平台二期 :版本库的名字,版本库认证域 , 使用 SVN 客户端访问时 , 会出现在提示信息中 , 最好自定义下域的标志以方便辨别

8.启动SVN
使用默认的端口3690:

svnserve -d -r /opt/install_software/svn/svnrepos/

使用指定端口:

svnserve -d -r /opt/install_software/svn/svnrepos/ --listen-port 1213

同一台服务器针对不用svn项目设置不用端口:

svnserve -d -r /opt/install_software/svn/svnrepos1/ --listen-port 1214

9.测试访问svn:
先拿浏览器访问:
Linux部署SVN及版本权限控制
这看到success不一定小乌龟就能连上

10.使用svn客户端连接(小乌龟)
在windows上双击TortoiseSVN-1.9.7.2.7907-x64.msi即可安装
安装完后再桌面创建文件夹并右击:
会在对话框中看到SVN checkout,然后点击进入
Linux部署SVN及版本权限控制_第6张图片

上面的地址是svn://IP:port:版本库名
下面是连接客户端文件夹连接的路径

点击下面ok即可,进入用户密码校验,成功后会显示如下:
Linux部署SVN及版本权限控制_第7张图片

然后进入文件夹:
Update是把svn服务端上的东西更新到本地
Commit是把本地东西提交到svn服务端
TortoiseSVN是对svn服务器的一些操作
如:repo-browse是直接可以连接到svn中,可以看出svn的目录机构,一级创建目录删除登操作
Linux部署SVN及版本权限控制_第8张图片

虽然svn现在使用的人已经很少了,但是技术传承不能断,里面有些东西写的不是特别细,要是有不对的地方希望和大家一起探讨进步


有志者事竟成,破釜沉舟,百二秦关终属楚;
苦心人天不负,卧薪尝胆,三千越甲可吞吴;