检查是否安装svn

  svn --version 看看,既能确定是否安装,又能确定版本多少

安装 svn
  yum -y install subversion

创建仓库存放目录

  mkdir -p /opt/svn/Warehouse  #Warehouse 仓库目录名称

创建仓库

  svnadmin create  /opt/svn/Warehouse

svn  文件夹设置 所属用户组/用户

  chown -R svn:svn /opt/svn/

 仓库权限 (  这个地方的是指 svn/conf/ 的 总配置文件,可以单独设置单个仓库的,语法一样)

vi svnserve.conf
[general]
anon-access=none #不允许匿名用户访问
auth-access=write #通过验证的用户可以读和写
password-db=passwd #用户密码管理文件
authz-db=authz #用户权限管理文件
realm=/opt/svn/Warehouse #仓库地址

添加 svn 用户

  vi authz
  [/]
  zw=rw  #用户名=读写

设置 svn 用户密码

  vi passwd
  zw=123  #用户名=密码

启动 Warehouse仓库  ( 端口默认:3690 )
  svnserve -dr /var/svn/Warehouse    # /var/svn/Warehouse 仓库地址

  svnserve -dr /var/svn/m --listen-port 3691   # 指定端口

查看是否启动

  pstree | greg svn

查看启动端口

  netstat -tunpl | grep svn

检出仓库(切换到想要检出到的目录,例如 cd /home/www/)

   svn co svn://121.199.5.128 ./   # ./ 检出到当前目录

   #  按照要求输入 账号密码

客户端提交自动更新服务端文件 

)cd /var/svn/m/hooks  # 切换到你仓库的 hooks 文件下
)cp post-commit.tmpl post-commit # 改成一个脚本
)chomd a+x post-commit # 赋予权限
)vi post-commit
  export LANG=en_US.UTF-
  #svn up --non-interactive --username zw --password '/usr/local/src/web/m'
svn up --non-interactive --username 登录仓库用户名 --password 登录仓库密码 '仓库绝对路径'

设置用户权限(登录终端用户)

自动在应用下生成文件或目录,所以 用户 要对 yzmedu 和 仓库 目录有充分的权限
setfacl -m u:daemon:rwx -R /usr/local/src/web/yzmedu
setfacl -m d:u:daemon:rwx -R /usr/local/src/web/yzmedu

开放svn 端口 

设置 iptables 防火墙,把 3690 和 3691 端口打开
iptables -A INPUT -p tcp --dport 3690 -j ACCEPT
iptables -A INPUT -p tcp --dport 3691 -j ACCEPT

设置 svnserve 两个仓库程序在 linux 服务器重启后开机启动

vi /etc/rc.local
/usr/bin/svnserve -dr /var/svn/yzmedu
/usr/bin/svnserve -dr /var/svn/m --listen-port 3691

在 window 上用 TortoiseSVN 进行分别检出即可

1)svn://121.199.5.128
2)svn://121.199.5.128:3691

出现问题

1) linux web 服务器下检出的目录下有.svn 目录,不能删除!
2) 网站目录 yzmedu 和 m 一定要设置 daemon 有足够的权限!
3) 不需要设置 svn 用户 zw 对网站目录的权限,因为 svn 的守护者为 root!

相关说明

SVN的svnserve对于每个仓库,有一个独立的配置文件和独立的用户、权限管理。
可以保持配置文件svnserve.conf的独立,但是用户、权限管理是用统一的一个文件来存储,这样方便以后的管理和维护。
另外要注意,即使svnserve服务已经运行,修改配置文件或者用户、权限管理文件,保存后马上生效,不需要重启服务。

服务端 安装配置 svn的更多相关文章

  1. 03-openldap服务端安装配置

    openldap服务端安装配置 阅读目录 基础环境准备 安装openldap服务端 初始化openldap配置 启动OpenLDAP 重新生成配置文件信息 规划OpenLDAP目录树组织架构 使用GU ...

  2. NFS相关、NFS服务端安装配置、exportfs命令、nfs客户端的问题

    1.NFS (network file system,基于RPC协议) 2.NFS服务端安装配置安装服务端:yum install nfs-utils rpcbind -y安装客户端:yum inst ...

  3. NFS介绍 NFS服务端安装配置 NFS配置选项

    NFS 介绍 • NFS是Network File System的缩写 • NFS最早由Sun公司开发,分2,,4三个版本,2和3由Sun起草开发,.0开始Netapp公司参与并主导开发,最新为4.1 ...

  4. NFS介绍、服务端安装配置、NFS配置选项

    6月21日任务 14.1 NFS介绍14.2 NFS服务端安装配置14.3 NFS配置选项 14.1 NFS介绍 14.2 NFS服务端安装配置 1.首先需要2台机器,一台是服务端,一台是客户端,分别 ...

  5. Linux centosVMware NFS介绍、NFS服务端安装配置、NFS配置选项

    一.NFS介绍 NFS是Network File System的缩写 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版 ...

  6. (二)svn服务端安装配置

    两种服务端安装包 官方安装包 官方网站:http://subversion.apache.org/ 下载:http://subversion.apache.org/download.cgi 官方提供的 ...

  7. zabbix服务端安装配置

    1.安装好httpd,mysql,php yum install httpd php mysql mysql-devel php-xmlwriter php-gd php-mbstring php-b ...

  8. svn服务端安装、权限修改以及客户端的使用

    2017-10-1016:10:2 svn服务端安装.权限修改以及客户端的使用 svn服务端.客户端.汉化包下载 http://pan.baidu.com/s/1c1Ogj2C 1.安装服务器端程序( ...

  9. svn服务端安装、迁移教程、Eclipse切换svn连接库

    svn服务端安装.迁移教程.Eclipse切换svn连接库 安装教程 1.下载svn服务端安装程序 2.运行程序,安装 这里端口号根据自己定义,避免与其他程序冲突 到这里就安装完成 迁移教程 这里举例 ...

随机推荐

  1. 字符编码(续)---Unicode与ANSI字符串转换以及分辨字符编码形式

    Unicode与ANSI字符串转换 我们使用windows函数MultiByteToWideChar将多字节字符串转换为宽字符字符串,如下: int MultiByteToWideChar( UINT ...

  2. 供参考的 php 学习路线

    供参考的 php 学习路线   第一阶段第一讲,WEB基础     1.1 网站基本知识: 1.2 网络协议介绍: 1.3 B/S与C/S结构的区别: 1.4 WEB编程.网站开发技术介绍.      ...

  3. 【转】LVS/Nginx如何处理session问题

    原文地址:http://network.51cto.com/art/201005/200279.htm 通过设置persistence的值,使session会话保持. [51CTO.com独家特稿]业 ...

  4. 符合mvc思维的分页思想

    .Model Student.cs namespace WebApplication14.Models { public class Student { public int Id { get; se ...

  5. 时间日期控件的处理-Selenium

    很多人问时间日期的空间怎么处理,但是时间日期控件各种各样,你可能遇到正常点的像这样: 当然也可能遇到难点的,像这样: 当然,也不排除会遇到变态的,像这样: 呵呵,真要一个个想着怎么去选择,简直是非人类 ...

  6. 设计模式10: Facade 外观模式(结构型模式)

    Facade 外观模式(结构型模式) 系统的复杂度 假设我们要开发一个坦克模式系统用于模拟坦克车在各种作战环境中的行为,其中坦克系统由引擎.控制器.车轮.车身等各个子系统构成. internal cl ...

  7. MongoDB整理笔记の指定命令和指定文件

    MongoDB shell 不仅仅是一个交互式的shell,它也支持执行指定javascript 文件,也支持执行指定的命令片断.有了这个特性,就可以将MongoDB 与linux shell 完美结 ...

  8. C++程序的目录结构、编译、打包、分发

    管理C++的第三方库以及编译 第三方库这个说法,不知道出自哪里,但一般是指开发者,系统/平台提供商之外的第三个参与者提供的程序库. 大多数开源软件库在软件系统中都是第三方库. 完全不使用库的开发,在9 ...

  9. HackOne

    使用 weight 属性实现视图的居中显示 一.在开发中有时候会遇到将一个控件在父控件居中显示.但是如果你直接用margin_*来进行限制的话就可能造成对于不同的型号的手机又不同显示的格式. 所以就可 ...

  10. unity中播放视频

    unity中播放视频步骤如下: 1.将要播放的视频拖入projec.(注意:unity一般支持的视频格式有mov, .mpg, .mpeg, .mp4,.avi, .asf格式  ) 2.在场景中添加 ...