• 1.Linux端SVN的搭建及多项目权限配置


    以下记录结果均有作者本人亲自测试可用。操作系统为Linux-EulerOS

    1.安装SVN服务

    1.1首先确认当前服务器是否已有svn

    svn --version
    

    如未安装则会显示:

    bash: svn: command not found

    如已安装则显示:


     

             1.2.安装svn

                  执行以下命令安装      yum install subversion

                 安装成功后切记再次调用 svn --version 命令,确认安装成功,如正确提示SVN版本号则安装陈宫

    2.创建版本库

       2.1创建版本库根文件夹

    版本库位置可以自主确认,我这里安装在/home/payy/code下,请注意此处建立的是服务器普通文件夹,并非SVN项目库,可以理解为项目库的总文件夹或者项目库的根目录。

    2.2创建svn项目库

     作者这里已多个项目来演示,svn版本库必须使用svn自带的命令行创建。

     创建项目版本库1:Microservice:svnadmin create /home/payy/code/Microservice

     创建项目版本库2:TplUpFiles:svnadmin create /home/payy/code/TplUpFiles

    创建完成后指定的 /home/payy/code/Microservice和/home/payy/code/TplUpFiles下会自动生成

    conf,db,format,hooks,locks,Readme目录,其中重点关注conf目录及其下authz,hooks-env.tmpl,passwd,svnserve.conf四个文件,这是权限和授权的配置文件。

    2.3配置/conf/svnserve.conf文件

    svnserve.conf主要指定了版本库根目录位置,及授权和认证文件的配置文件地址

     其中anon-access = none表示匿名用户无任何权限

     auth-access = write表示认证用户有可写权限

     realm = /home/payy/code  表示版本库根目录在  realm = /home/payy/code下

    3.多版本项目下权限配置

    3.1首先修改/home/payy/code/Microservice/conf下passwd

    vi  /home/payy/code/Microservice/conf/passwd

     如下图在【users】下添加可使用svn的用户账号格式为:

    account1 = password1      

    account2 = password2       

    其含义为:账户account1密码为password1     账户account2密码为password2 

    3.2 配置auth文件【重点】

    首先修改/home/payy/code/Microservice/conf下auth

    vi  /home/payy/code/Microservice/conf/auth

     3.1.1如下图:修改auth中【groups】下内容

     其中admin=account1,account2 表示 账号account1,account2为管理员admin分组

     其中dev=account3,account4 表示 账号account3,account4为开发人员dev分组

     3.1.2如上图:修改auth中[/]下内容

    [/]

    @admin = rw
    指的是   admin分组下所有人员对版本库根目录有读写权限,一定注意这里/指的是版本库根目录而非创建版本库文件夹的根目录,及 admin分组下所有人可以访问 /home/payy/code/Microservice/**

     3.1.3如上图:添加auth中[/]下内容

    [/otherCodeRouter]
    @dev = rw

    * = r

    指的是   dev 分组下所有人对版本库根目录下/otherCodeRouter/**有读写权限

    * = r指定是 其他所有未指定人只有版本库根目录下/otherCodeRouter/**的只读权限

    及 dev 分组下 所有人可以访问 /home/payy/code/Microservice/otherCodeRouter

    如果 dev 分组下 人员访问/home/payy/code/Microservice/目录会提示 auth fail;

           dev 分组下 人员访问/home/payy/code/Microservice/otherCodeRouter则正常

    而admin 分组下 人员访问/home/payy/code/Microservice/下所有目录;

    4.启动svn服务端

    svnserve -d -r /home/payy/code

    默认端口3690,启动成功后即可在客户端输入svn://ip;3690/Microservice/进行连接;如下图:

     

    PS:在多项目下我们可以单独制定一个auth文件,然后其他版本库service.conf中的auth指向该文件地址即可实现多项目共用一个auth文件;同理passwd文件也可以这样。

    后期将会逐步记录idea,ecplise下的初始项目版本管控以及如何将项目从git版本管控转到svn下

  • 相关阅读:
    始祖双碳新闻 | 2022年8月29日碳中和行业早知道
    【Nginx】Windows10 平台下配置Nginx服务实现负载均衡
    我用规则引擎实现了消除if语句
    自制编程语言基于c语言实验记录之五:虚拟机
    面试常问:HTTP 1.0 和 HTTP 1.1 有什么区别?
    docker compose 部署ELK 8.X及监控
    Eclipse连接Mysql超详细教程
    野生程序员的成长之路(续)--团队需要什么样的管理者?
    Day663.大佬学习经验分享 -Java业务开发常见错误
    2022年武汉市小微企业服务补贴券签约服务机构申报条件、材料和申报方式
  • 原文地址:https://blog.csdn.net/gaoduicai/article/details/127763038