CentOS搭建SVN记录

1、安装subversion(client and server)

$ yum install subversion
$ yum install mod_dav_svn

安装成功之后使用 svnserve --version 看一下安装的版本

[root@localhost conf]# svnserve --version
svnserve, version 1.6.11 (r934486)
   compiled Aug 17 2015, 08:37:43

Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).

The following repository back-end (FS) modules are available:

* fs_base : Module for working with a Berkeley DB repository.
* fs_fs : Module for working with a plain file (FSFS) repository.

Cyrus SASL authentication is available.

svn的版本是1.6.11,是一个老旧的版本了,官网上的版本已经是1.9.4,先不纠结这个问题,先用这个老版本
460896-20160819092400859-1248221383.png

2、代码库创建

SVN软件安装完成后还需要建立SVN库,我将svn库的路径设在了/var/www/svn/game/test/下面

mkdir -p /var/www/svn/game/test
svnadmin create /var/www/svn/game/test

创建成功之后可以cd到这个目录看看

[root@localhost test]# ll
total 24
drwxr-xr-x. 2 root root 4096 Aug 18 18:13 conf
drwxr-sr-x. 6 root root 4096 Aug 18 03:07 db
-r--r--r--. 1 root root2 Aug 18 01:21 format
drwxr-xr-x. 2 root root 4096 Aug 18 01:21 hooks
drwxr-xr-x. 2 root root 4096 Aug 18 01:21 locks
-rw-r--r--. 1 root root  229 Aug 18 01:21 README.txt

目录结构创建如上,创建成功。

3、配置代码库

cd到/var/www/svn/game/test/conf下面
svnserve.conf(### This file controls the configuration of the svnserve daemon, if you use it to allow access to this repository.)
passwd(### This file is an example password file for svnserve.)
authz(### This file is an example authorization file for svnserve.)

vi svnserve.conf,在[general]下面追加或者打开注释
#匿名访问的权限,可以是read,write,none,默认为read
anon-access=none
#使授权用户有写权限
auth-access=write
#密码数据库的路径
password-db=passwd
#访问控制文件
authz-db=authz
#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm=/opt/svn/repositories

PS:在[general]后面追加,我一开始看教程的时候,直接加在了文件的最后面,发现用户权限怎么都没有生效,查了好久才找到问题所在。

用户密码passwd配置 编辑passwd文件即可,内容很简单,username=passwd

权限控制authz配置,直接附上原文

### Its format is identical to that of mod_authz_svn authorization
### files.
### As shown below each section defines authorizations for the path and
### (optional) repository specified by the section name.
### The authorizations follow. An authorization line can refer to:
### - a single user,
### - a group of users defined in a special [groups] section,
### - an alias defined in a special [aliases] section,
### - all authenticated users, using the '$authenticated' token,
### - only anonymous users, using the '$anonymous' token,
### - anyone, using the '*' wildcard.
###
### A match can be inverted by prefixing the rule with '~'. Rules can
### grant read ('r') access, read-write ('rw') access, or no access
### ('').

[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

# [/foo/bar]
# harry = rw
# &joe = r
# * =

# [repository:/baz/fuz]
# @harry_and_sally = rw

4、相关命令

  1. 查看svn是否运行 ps -ef|grep svn|grep -v grep
  2. 停止SVN命令 killall svnserve
  3. 启动svn版本库 svnserve -d -r 目录名
  4. 如果目录名不同,svn的链接也不同。
  5. 如果我使用svnserve -d -r /var/www/svn/game/test
    则svn的地址为:svn://ip
    如果我使用svnserve -d -r /var/www/svn/
    则svn的地址为:svn://ip/game/test

5、后续

这种直接用svnserve运行的

转载于:https://www.cnblogs.com/rainInSun/p/5786391.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值