文档章节

CentOS下安装svn服务器(独立服务器)

断了联系
 断了联系
发布于 2016/09/19 15:13
字数 1029
阅读 3
收藏 0

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。

一、安装svn(yum安装方式)

查看当前系统的svn:yum list subversion
subversion.i686                       1.6.11-15.el6_7                      @base
subversion.x86_64                     1.6.11-15.el6_7                      base

选择安装的版本:(这儿选择安装的subversion.x86_64)

yum install subversion.x86_64

安装过程中会提示安装一些依赖插件,输入yes即可

安装完以后查看svn版本

svn --version

到此svn安装完成

二、配置svn

1、创建仓库

创建svn仓库:

mkdir -p /usr/local/svn/test(mkdir -p命令是在没有上层目录的情况下,可以先创建上层目录,在创建子目录)

svnadmin create /usr/local/svn/test(创建版本仓库)

这时在test目录下会多出几个文件和文件夹,如下图所示:

2、配置权限

配置仓库权限分两种情况,一种是分别配置,一种是统一配置,根据具体情况而定,这儿配置的是统一权限:

新建一个目录:mkdir /usr/local/svn/svndata

这个目录用来放置统一的配置权限文件

1、创建仓库总控制文件svnserve.conf:vim /usr/local/svn/svndata/svnserve.conf

然后输入一下内容:

[general]

#没有登录的用户的权限
anon-access = none

#已登录的用户的权限
auth-access = write

密码文件的路径(里面存储了可以访问svn的用户名和密码)
password-db = passwd(svnserve.conf和passwd在同一目录下)

权限控制文件的路径
authz-db = authz(svnserve.conf和authz在同一目录下)

#realm指定版本库的认证域,即在登录时提示的认证域名称。各个仓库的认证域都可以自定义
realm = svndata

保存并退出

2、创建密码文件passwd:vim vim /usr/local/svn/svndata/passwd

然后输入一下内容:

[users]

#格式:用户名=密码,创建多个直接换行就行了

test=test

test1=test1

退出保存

3、创建权限文件:vim /usr/local/svn/svndata/authz

[groups]

#定义用户组,格式:用户组=用户名,用户名(多个用户名用逗号隔开)
admin = test

admin1=test1,test

#定义根目录权限
[/]

#用户组权限格式:@用户组=权限

#用户权限格式:用户名=权限

#权限:r代表读权限,w代表写权限,=后面为空代表空权限,即没有权限

#@用户组:表示某个用户组,用户名:表示某个用户名,*表示所有人

@admin = rw

test1=rw

#下面这一行就表示全部用户的权限为空,但如果是上面的用户或者用户组则不包括在内,因为会先访问上面的权限,如果上面满足了,不会执行下面的

*=

#定义版本库权限:

[test:/]

@admin1=rw

*=

#定义版本库下面的某个项目的权限:(假设现在版本库中有一个项目名叫project)

[test:/project]

@admin=rw

*=

#定义版本库下面的某个项目下面的目录的权限:(假设上面的项目有一个目录名为:dir)

[test:/project/dir]

test01=rw

*=

至此,同意权限配置完成,下面进行每个版本库的单独权限配置(以test版本库为例):

1、配置svnserve.conf:vim /usr/local/svn/test/conf/svnserve.conf

[general]
anon-access = none

auth-access = write
password-db = /usr/local/svn/svndata/passwd
authz-db = /usr/local/svn/svndata/authz
realm = svndata

保存并退出

2、如果使用统一的权限和用户的话,就不需要在配置该目录下的passwd和authz文件了,如果不适用的话,就需要配置这两个文件,并且修改svnserve.conf文件中password-db和authz-db的值,配置文件的方式和上面相同。

三、常用命令:

启动svn:/usr/local/svnserve /usr/local/svn

开机启动:vim /etc/rc.d/rc.local

加入下图中红色框中的命令即可

至此svn安装配置完成

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
断了联系
粉丝 1
博文 33
码字总数 22234
作品 0
成都
程序员
私信 提问
CentOS下使用yum安装配置和使用svn

安装说明 系统环境:CentOS-6.3 安装方式:yum install (源码安装容易产生版本兼容的问题) 安装软件:系统自动下载SVN软件 检查已安装版本 #检查是否安装了低版本的SVN[root@zck /]# rpm ...

Junn
2013/09/25
0
0
Linux centos下安装svn服务器就这么难么?

想在自己的云服务器上装个svn服务器,svn服务器安装不难,关键在于想集成svn和apache, 因为想通过eclipse或者浏览器直接访问到svn服务器, 问题来了: 根据网上的一些帖子,一步一步的来了,...

一个不正经的程序员
2014/11/02
321
2
CentOS 5.5下搭建部署独立SVN服务器全程详解

SVN服务器有2种运行方式: 1、独立服务器 (例如:svn://xxx.com/xxx); 2、借助apache (例如:http://svn.xxx.com/xxx); 为了不依赖apache,我选择第一种方式:独立的svn服务器。 SVN存储版...

李长春
2012/02/16
0
0
关于使用svn协同开发问题

现在我邀请了几个朋友一起开发一款在线管理系统,由于我们不在同一个地方,所以准备使用svn来进行协同开发。在查看了很过关于Apache和svn的资料后很迷茫,希望各位前辈很指教下(我的服务器是...

㊙橘子微苦
2016/02/18
856
5
ansible+nginx+apache+svn自动化发布

一.ansible根据以下网址进行安装 http://blog.51cto.com/8999a/1965139 二.nginx+apache+svn安装 rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.n......

轻狂书生999
2018/06/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

day11

architect刘源源
今天
6
0
论学好Linux系统的超级重要性

不知道各位在日常的工作生活中有没有接触过“rm -rf /*”这个命令,因为这个命令搞出来的事情可还不少呢!前段时间就在一个群里看到了有个小伙子,老板让他去维护一下服务器,这小伙也不太懂...

Linux就该这么学
昨天
6
0
git 使用

1,首先在github配置好信息和仓库,然后在本地进行操作 git init git config user.name 'zhangwuer' git config user.email '56789053@qq.com' 2,与远程分支建立连接 git checkout -b test......

天王盖地虎626
昨天
3
0
git checkout 命令详解

在日常的git操作中,git checkout——检出,是我们的常用命令。最为常用的两种情形是创建分支和切换分支。 在下面的命令中,使用了一些简写,在这里说明一下: git st # git statusgit ci ...

shzwork
昨天
10
0
【Nginx】Nginx多级代理,获取客户端真实请求IP以及每级代理IP

Nginx多级代理,获取客户端真实请求IP以及每级代理IP 如图所示,每一级nginx里的location配置里需要加上对应的配置,最后一级nginx是直接到应用,测试时为了方便,直接用echo模块去测试,打印...

薛定谔的旺
昨天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部