安搭
软件安装搭建教程网是专门为软件开发、IT运维人员提供Apache、Centos、dotNET、Eclipse、Ftp、Git、java、mssqlserver、MySQL、Nginx、php、python、Redis、SVN、Vscode、VUE等服务器服务系统的安装教程、搭建教程、配置教程信息网。

linux svn 服务配置文件,linux系统Centos环境下如何搭建SVN服务器以及svnserve.conf、authz、passwd配置文件详细介绍...

linux系统Centos环境下如何搭建SVN服务器以及svnserve.conf、authz、passwd配置文件详细介绍

2020年01月11日

阅读数:49

这篇文章主要向大家介绍linux系统Centos环境下如何搭建SVN服务器以及svnserve.conf、authz、passwd配置文件详细介绍,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

至于svn的概念,这里就不作详细阐述了,能够自行百度。简单来说就是一个代码管理工具。本笔记就是记录下svn安装搭建步骤而已。

1,yum安装svn

yum install subversion -y

2.验证是否安装完成

svnserve --version

如显示svn版本以及介绍信息,说明svn安装成功。或直接netstat 或ps查看也能够。

3,建立svn版本库

mkdir /home/svn   #把版本库放在了home目录下的svn文件夹

svnadmin create /home/svn/repo0 #将svn做为全部版本库的目录,并建立了一个名为repo0的版本库

4.配置当前的版本库

建立版本库后,在当前版本库目录中会生成下面的文件,重点是配置文件。

[root@21yunwei svn]# cd  /home/svn/repo0

[root@21yunwei repo0]# ll

总用量 24

drwxr-xr-x 2 root root 4096 5月   5 05:50 conf

drwxr-sr-x 6 root root 4096 5月   5 05:50 db

-r--r--r-- 1 root root    2 5月   5 05:50 format

drwxr-xr-x 2 root root 4096 5月   5 05:50 hooks

drwxr-xr-x 2 root root 4096 5月   5 05:50 locks

-rw-r--r-- 1 root root  229 5月   5 05:50 README.txt

[root@21yunwei repo0]# ll conf

总用量 12

-rw-r--r-- 1 root root 1080 5月   5 05:50 authz

-rw-r--r-- 1 root root  309 5月   5 05:50 passwd

-rw-r--r-- 1 root root 2279 5月   5 05:50 svnserve.conf

说明:

(1)svnserve.conf:  svn服务综合配置文件,只须要更改四行。

(2)passwd: 用户名口令文件。前边是svn帐号,后边是密码,密码是明文存储。配置哪些用户能够受权使用,里边包含用户名和密码。

(3)authz: 权限配置文件。

(4)注意更改svnserve.conf配置文件须要重启svn,更高authz和passwd不须要重启svn。重启方法:pkill svnserve 而后从新svnserve -d -r 项目目录便可。

4.1 修改passwd文件

### This file is an example password file for svnserve.

### Its format is similar to that of svnserve.conf. As shown in the

### example below it contains one section labelled [users].

### The name and password for each user follow, one account per line.

[users]

# harry = harryssecret

# sally = sallyssecret

zhangsan = 123456

lisi = 123456

前边是svn帐号,后边是密码,密码是明文存储。配置哪些用户能够受权使用,里边包含用户名和密码。

4.2修改authz文件。

这个配置文件就两个地方须要设置就能够了,一个是组和用户的设置,另外一个是版本库的目录格式配置以及权限分配。

4.2.1,组和用户配置。

(1)一个组group能够包含一个和多个用户,其中用户名必须在用户配置文件中已经定义。

(2)能够将指定具体组,好比开发组和运维组等。

4.2.2,版本库配置以及权限分配。

版本库目录格式为  :

[版本库:/项目/目录]

用户名 = 权限

@组名 = 权限

说明:

(1)权限,分为r,w,rw和空。空表明没有任何权限

(2)版本库目录多种写法,若是只写根/表明对这个项目以及下边全部目录都有权限,若是单独制定目录,能够加上具体目录名。

其中根是svn启动的时候咱们指定的-r指定的版本库。

举例以下:

[repo0:/] 表明对repo0全部版本库设置权限权限

[repo0:/21yunwei]  表明对repo0版本库下的21yunwei项目设置权限

[repo0:/21yunwei/demo]  表明对repo0版本库下的21yunwei项目的demo目录设置权限

[aliases]

# joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average

#这里实现了别名的定义

[groups]

# harry_and_sally = harry,sally

# harry_sally_and_joe = harry,sally,&joe

team0=zhangsan #将上面建立的分红两个组

team1=lisi

# [/foo/bar]

# harry = rw

# &joe = r #上面的别名定义在这里实现 &在这里理解为指针就很容易了

# * =

# [repository:/baz/fuz]

# @harry_and_sally = rw

# * = r

[repo0:/]

@team0=r

@team1=rw

21yunwei = r

# 第一个小组只有读取的权限,第二个小组有读写的权限

# 单个版本库的权限配置在这个文件中实现

4.3 修改svnserve.conf并重启svn

vi  svnserve.conf 主要修改以下参数,其余不须要修改:

anon-access = none

auth-access = write

password-db = passwd  #这个文件能够统一指定一个passwd文件便于统一管理不须要单独每一个版本库单独配置。

authz-db = authz  #这个文件能够统一指定一个authz文件便于统一管理不须要单独每一个版本库单独配置。

[general]

### These options control access to the repository for unauthenticated

### and authenticated users.  Valid values are "write", "read",

### and "none".  The sample settings below are the defaults.

anon-access = none #没有登陆的用户不能访问

auth-access = write #登陆的用户能够写入

### The password-db option controls the location of the password

### database file.  Unless you specify a path starting with a /,

### the file's location is relative to the directory containing

### this configuration file.

### If SASL is enabled (see below), this file will NOT be used.

### Uncomment the line below to use the default password file.

password-db = passwd #密码文件为当前目录下的passwd

### The authz-db option controls the location of the authorization

### rules for path-based access control.  Unless you specify a path

### starting with a /, the file's location is relative to the the

### directory containing this file.  If you don't specify an

### authz-db, no path-based access control is done.

### Uncomment the line below to use the default authorization file.

authz-db = authz #验证文件为当前目录下的authz

这里着重说明下,参数前面不要有空格,不然启动报错。

5 导入、导出工程

导入

$ mkdir MyProject

$ mkdir MyProject/hehe

$ mkdir MyProject/haha

svn import MyProject svn://192.168.1.112/repo0/MyProject -m "first import project"

导出

svn co svn://192.168.1.112/repo0/MyProject

配置完毕。有问题或建议的朋友能够留言。

http://www.21yunwei.com/archives/3691

文章来源:https://blog.csdn.net/weixin_29419979/article/details/116829297