centos下搭建多项目svn服务器
svn是多人协作开发中的利器,是一个开放源代码的版本控制系统。
相比与git,他的操作更加简单,windows下有优秀的图形界面,并且支持的文件类型比较多。
本文讲述如何在linux下搭建一个svn服务器,并且进行权限分配,项目管理。
服务器环境:centos7
安装步骤:
1.yum install subversion -y

出现complete即代表安装完成.
2.选择一个目录作为svn服务器根目录 我选择的是 /srv
mkdir /srv/svn
3.创建版本库,因为要展示多个版本库的搭建,因此这里我创建3个版本库作为演示。
svnadmin create /srv/svn/p1
svnadmin create /srv/svn/p2
svnadmin create /srv/svn/p3
这样就可以创建三个项目,项目名为p1,p2,p3

现在文件目录如上图,我们查看一下每个项目的目录

可以看到p1下拥有这6个文件,其中最主要的是conf目录,查看conf目录,可以看到3个文件
authz //权限控制文件
passwd //用户账号密码
svnserve.conf //svn配置文件
p1,p2,p3 都有这几个文件,因为我们要搭建的是多项目svn服务器,因此 权限控制与账号密码文件 需要公共使用。
拷贝authz 与 passwd到 /srv/svn 公共目录下
cp /srv/svn/p1/conf/authz /srv/svn
cp /srv/svn/p1/conf/passwd /srv/svn

编辑svn目录下的 账号密码文件
vi /srv/svn/passwd

如图 我添加了这几个用户 =号左边的代表登录用户 右边代表登录密码。
再编辑 svn下的权限控制文件

可以看到group标签。 这里是添加用户组的,我们可以给每个用户指定属于哪个用户组,并且以组为单位赋予权限。

如图,我创建了四个用户组,admin组包含用户zdp,其他3个组包含了测试用户
svn的权限控制很精确,可以指定到每个项目,每个成员,每个组所拥有的权限
我在文件的底部添加如下记录。
[/]
@admin = rw
test1 = r
[p1:/]
@group2 = rw
[p2:/]
@group2 = rw
test5 = rw
[p3:/]
@group3 = rw

接下来分别解释一些1,2,3,4所代表的含义。
1:admin组拥有对svn跟目录的读写权限,test1拥有对根目录的读权限。
可以看到指定组权限的时候 加个@即可。
2:group2组 拥有对 p1项目 的读写权限。
3.4的含义 大家想必都能懂了吧。
接下来编写每个项目的 配置信息。
vi /srv/svn/p1/conf/svnserve.conf

如图,找到这五个地方,地方去掉前面的#号,修改为如上图信息。
anon-accsee =none //匿名是否可读 read代表允许,none禁止
auth-access = write //授权用户可写
password-db = /srv/svn/passwd //该项目的账号密码信息 使用根目录下我们刚才编写的passwd文件
authz-db = /srv/svn/authz //同上,权限信息使用根目录下的文件
realm = p1 //重要,指定该项目的域名,建议和项目名同名,通过指定该信息,就可以使用url区分不同的项目了
保存 然后对 其他两个项目信息都类似的编写。
svnserve -d -r /srv/svn //启动svn服务器
接下来就可以在windows下使用TortoiseSVN 进行项目的版本控制了。
比如说 检出p1项目,就可以使用url : svn://ip地址或者域名/p1
centos下搭建多项目svn服务器的更多相关文章
- CentOS 下搭建部署独立SVN服务器全程详解(5.5)
SVN服务器有2种运行方式: 1.独立服务器(例如:svn://xxx.com/xxx): 2.借助apache (例如:http://svn.xxx.com/xxx): 为了不依赖apache, ...
- CentOS 5.5下搭建部署独立SVN服务器全程详解
SVN服务器有2种运行方式:1.独立服务器 (例如:svn://xxx.com/xxx):2.借助apache (例如:http://svn.xxx.com/xxx):为了不依赖apache,我选 ...
- 在CentOS下搭建自己的Git服务器
首先需要装好CentOS系统,作为测试,你可以选择装在虚拟机上,这样比较方便.这步默认你会,就不讲了.有了CentOS,那么如何搭建Git服务器呢?1.首先需要安装Git,可以使用yum源在线安装: ...
- Centos下搭建DNS域名解析服务器
Centos下搭建DNS域名解析服务器 DNS 即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域 ...
- CentOS下通过yum安装svn及配置
CentOS下通过yum安装svn及配置 1.环境centos5.5 2.安装svnyum -y install subversion 3.配置 建立版本库目录mkdir /www/svndata s ...
- 第四百零五节,centos7下搭建sentry错误日志服务器,接收python以及Django错误,
第四百零五节,centos7下搭建sentry错误日志服务器,接收python以及Django错误, 注意:版本,不然会报错 Docker >=1.11Compose >1.6.0 通过d ...
- CentOS下搭建LNMP+WordPress+http2.0教程
此文是本人CentOS下搭建WordPress的一些笔记,环境搭建时间::将看过的几篇文章总结下来,形成一条龙长文.不用大家再找来找去. 本文大概分为此几部分: 一.基础命令更新: 二.服务器加速(非 ...
- CentOS下搭建LAMP环境详解
前言:在这里将介绍如何在CentOS下搭建LAMP环境(全部使用源码编译安装),用于web服务器开发. •LAMP: Linux + Apache + PHP + Mysql. •系统: CentOS ...
- Centos下搭建 nginx+uwsgi+python
python做web应用最麻烦的还是配置服务器了,此话不假,光中间件就有好几种选择,fastcgi.wsgi.uwsgi,难 免让人眼花缭乱. 而听说uwsgi的效率是fastcgi和wsgi的10倍 ...
随机推荐
- CJOJ 2307 【一本通】完全背包(动态规划)
CJOJ 2307 [一本通]完全背包(动态规划) Description 设有n种物品,每种物品有一个重量及一个价值.但每种物品的数量是无限的,同时有一个背包,最大载重量为M,今从n种物品中选取若干 ...
- 关于移动APP与Web APP的测试重点以及区别
Web app测试重点: 1. 功能测试:功能的实现是否满足需求. 2. 性能测试: 2.1 链接速度测试:测试页面链接的速度 2.2 负载测试:web应用系统能允许多少个用户同时在线?超过这个数量会 ...
- 关于ubuntu服务器上部署postgresql 以及安装pgadmin4管理工具(web版)
进入目录:cd pgadmin4 source bin/activate cd pgadmin4-1.6/ 启动pgadmin4:python web/pgAdmin4.py pgadmi ...
- css3变换,过度,动画实现梦幻网页
html和css3一出,整个互联网设计发生了颠覆性的改变,各大IT企业也推出了很多新颖的设计,比如百度浏览器的下载首页,fullpage设计风格加css动画让网页看起来很流畅舒服. css3的变换有3 ...
- 基于腾讯Centos7云服务器搭建SVN版本控制库
基于腾讯Centos7云服务器搭建SVN版本控制库 最近在和小伙伴组队参加一个关于人工智能的比赛,无奈不知道怎么处理好每个人的代码托管问题,于是找到了晚上免费svn托管服务器的服务,但是所给的免费空间 ...
- Python面向对象编程(一)
1.什么是面向对象 面向对象(oop)是一种抽象的方法来理解这个世界,世间万物都可以抽象成一个对象,一切事物都是由对象构成的.应用在编程中,是一种开发程序的方法,它将对象作为程序的基本单元. 2.面向 ...
- vue数据驱动作用域问题
需求是这样的,如图 点击禁用后,变成启用,但是结果却不让人满意 我们先来看一下错误代码: //conponet控件里的内容 html内容: <div> <button @click. ...
- 第一回:Scrapy的试水
前言:今天算是见到Scrapy的第二天,之前只是偶尔查了查,对于这个框架的各种解释,我-----都-----看------不------懂----,没办法,见面就是刚. 目的:如题,试水 目标:< ...
- node 简介 起源
最近的node 的一篇文章阅读量很大,所以写一篇基础篇供大家分享,抛砖引玉,各取所需. 部分内容来源大神笔记. Node.js 简介:@@@@@@@@@@@@@@@@@@@ Node.js是目前非常火 ...
- perl的INC设置
perl中的INC变量中包含了所有的perl module的查找路径. 可以使用perl -V 来查看INC的值. 1)默认地INC如下: @INC: C:/Perl/site/lib C ...