新闻动态
新闻动态
NEWS INFORMATION

CentOS SVN服务器如何管理多个项目

发布日期:2022-01-07 18:36 | 文章来源:站长之家

一 需求

一般来说,公司有多个项目,在搭建好SVN服务器之后,就需要使用SVN来实现不在一个项目中的开发人员不能访问其它项目中的代码。

假设:

有3个项目:project1、project2、project3

开发人员有6个人:eg1、eg2、eg3、eg4、eg5、eg6

eg1、eg2,只能访问project1;

eg3、eg4,只能访问project2;

eg5、eg6,只能访问project3;

二 实现

在仓库根路径下:假设是/home/svnroot

cd /home/svnroot

// 创建三个代码仓库

svnadmin create project1
svnadmin create project2
svnadmin create project3

// 把两个权限配置文件复制到 仓库根路径下,统一管理所有代码仓库

cd /projcet1/conf
cp authz passwd /home/svnroot

// 打开配置文件

vim svnserve.conf

修改成如下:

anon-access = none # 禁止匿名访问
auth-access = write
password-db = /home/svn/passwd # 统一使用密码文件
authz-db = /home/svn/authz
realm = project1 # 权限域名,很重要,写你的项目名

分别修改 project2 的 svnserve.conf,和上面一样,最后一行分别写

anon-access = none # 禁止匿名访问
auth-access = write
password-db = /home/svn/passwd # 统一使用密码文件
authz-db = /home/svn/authz
realm = project2 # 权限域名,很重要,写你的项目名

分别修改 project3 的 svnserve.conf,和上面一样,最后一行分别写

anon-access = none # 禁止匿名访问
auth-access = write
password-db = /home/svn/passwd # 统一使用密码文件
authz-db = /home/svn/authz
realm = project3 # 权限域名,很重要,写你的项目名

修改两个权限管理文件:

cd /home/svnroot
vim passwd

// 用户名 = 密码

[users]
eg1 = 123456
eg2 = 123456
eg3 = 123456
eg4 = 123456
eg5 = 123456
eg6 = 123456
vim authz
[groups] # 分组
admin = eg1,eg2
guest = eg3,eg4
guset1 = eg5,eg6

[/] # 管理者拥有所有读写权限
@admin = rw
* =

[project1:/] # 项目1的访问控制,guest1,2无法访问
@admin = rw

eg1 = rw
eg2 = rw

[project2:/]
@guest = rw

eg3 = rw
eg4 = rw

[project3:/]
@guest1 = rw

eg5 = rw
eg6 = rw

三 重启

svnserve -d -r /home/svnroot

// 停止命令

killall svnserve

四 实际测试

各个组成员只能访问自己的项目,无权限查看别人的项目

只有管理员才能查看所有项目工程

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部