svn安装配置

1. 安装SVN服务器:

检查是否已安装

# rpm -qa subversion

安装SVN服务器

# yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql

验证安装

# cd /etc/httpd/modules
# ls | grep svn
mod_authz_svn.so
mod_dav_svn.so

查看版本

# svnserve --version

2. 代码库创建:

安装完成后要建立SVN库

# mkdir -p /opt/svn/work
# svnadmin create /opt/svn/work

执行后,自动建立work库,查看/opt/svn/work文件夹包含了conf,db,format,hooks,locks,README.txt文件,说明一个SVN库已经建立。

authz文件是权限控制文件

passwd是帐号密码文件

svnserve.conf SVN服务配置文件

3. 配置版本库:

进入上面conf文件夹下,进行配置:

  • 用户密码passwd配置:
#cd /opt/svn/work/conf
# vim passwd
[users]   #添加你所开放的用户:user = password
dit = dit
  • 权限控制authz配置:
# vim  authz

设置哪些用户可以访问哪些目录,向authz文件追加以下内容:

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
local=byf   #多个用户用,隔开

[work/:]
byf = rw   或者  @local = rw 
* = r   * = r表示,除了上面设置了权限的用户组之外,其他任何人只能读本目录

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



[/] dit=rw //给该用户访问所有库读写的权限

[work:/] //work库的根目录权限
dif=rw

/ 表示根目录及以下,根目录是svnserve启动时指定的,我们指定的是/opt/svn;/ 就是指对全部版本库都具有权限

work:/ 表示对库work的根目录设置权限

注意:

* 权限配置文件中出现的用户名必须已在用户配置文件中定义。

* 对权限配置文件的修改立即生效,不必重启svn。

  • 服务svnserve.con配置:
# vim  svnserve.conf

添加一下内容:

复制代码
[general]

anon-access = read #匿名用户可读

auth-access = write #授权用户可写

password-db = passwd #使用哪个文件作为账号文件

authz-db = authz #使用哪个文件作为权限文件

realm = /usr/local/svn/work # 认证空间名,版本库所在目录

复制代码
  • 启动SVN
# svnserve -d -r /opt/svn/repositories    --listen-port  3397    #指定启动端口的参数 --listen-port 3397
  • 查看SVN进程
# ps -ef|grep svn|grep -v grep
root 12413 1 0 12:40 ? 00:00:00 svnserve -d -r /opt/svn/repositories  
  • 检测SVN端口
# netstat -ln |grep 3397
tcp 0 0 0.0.0.0:3397 0.0.0.0:* LISTEN

4. 停止重启SVN:

# killall svnserve //停止
# svnserve -d -r /opt/svn/repositories // 启动 端口默认为3690

5. 测试连接:

使用TortoiseSVN进行测试:

1. SVN服务启动后,需要使用客户端测试连接:

    客户端连接地址:svn://192.168.25.134;然后,输入用户名密码;           (指定端口启动需要加端口才能访问)

2. 新建一个文件夹,即本地的库文件夹,右键checkout,将会得到一个隐藏文件夹.svn;

3. 在此文件夹中放入项目内容,然后右键点击commit,就可以上传本地项目了。

原文地址:https://www.cnblogs.com/byfboke/p/9123084.html