linux服务器svn创建仓库并配置访问权限

服务器端搭建好SVN服务,并启动后,便可进行SVN仓库的创建以及配置操作,参考如下:

一、创建SVN仓库根目录

首先使用mkdir命令创建SVN仓库根目录,若在已有的SVN仓库目录下创建版本仓库,则忽略此步骤。
如:此处我需要在svntest文件夹下建立项目版本库,则需要先建立这个目录
在这里插入图片描述

二、SVN根目录下建立版本仓库并启动端口

(1)使用cd命令进入SVN根目录下,执行svnadmin create 版本仓库,执行完此命令后在对应的根目录下会显示以版本仓库命名的文件夹。
在这里插入图片描述
(2)使用svnserve -d -r 仓库路径 --listen-port 端口号命令为其单独指定一个端口,如下图,我为其指定端口3403。(若指定的端口被占用,则可指定其他端口,或执行kill命令先停止端口再进行指定)
在这里插入图片描述

三、修改authz passwd svnserve.conf配置

1、authz文件修改

此文件用于文件目录授权,采用“基于路径的授权”策略,中括号里指定路径,下方列出对各用户的授权。
如:此处[/]指定根目录的访问权限,[/测试项目01]指定了根目录下面“测试项目01”这个文件夹的访问权限,以此类推。
若用户较多,也可以用组的形式进行控制。
[groups]
用户组名 = 用户1,用户2
引用时使用: @用户组名 = 权限
在这里插入图片描述

2、passwd文件修改

配置用户名和密码,格式:用户名 = 密码,可添加多个。
在这里插入图片描述

3、svnserve.conf文件修改

删除[general]中下面几条前面的#号以及空格注释,可将anon-acess = read修改为anon-acess = none,即没有授权的用户不允许访问。
在这里插入图片描述

四、管理员客户端创建根目录下设置的子文件夹并上传

首先需要由拥有根目录rw权限的用户建立authz中设置的名称对应的文件夹,并上传:客户端电脑创建文件夹,执行SVN Checkout命令,把上方建立的项目仓库checkout到本地,创建对应的文件夹(如例子中测试项目01),然后执行svn Add – Commit命令上传。
此时其他拥有这个子文件夹权限的用户便可正常访问。
在这里插入图片描述