http://www.linuxidc.com/Linux/2016-01/127679.htm

https://blog.csdn.net/mrwu9902/article/details/78695511

https://blog.csdn.net/jesonjoke/article/details/77094867

https://blog.csdn.net/dl425134845/article/details/41978541

http://www.cnblogs.com/yangwenpeng/p/7264955.html

多仓库配置

一:

如何安装SVN,这里就不再重复描述了,可以参见我另一篇文章。链接如下

http://blog.csdn.net/dl425134845/article/details/41209763

重点描述一下如何配置多个版本库

进入到svn的安装目录/usr/local/svn/bin下,

先创建一个存放版本库的路径

mkdir -p /usr/local/svndata/

创建版本库1

./svnadmin create /usr/local/svndata/repos1

创建版本库2

./svnadmin create /usr/local/svndata/repos2

切换路径至/usr/local/svndata/repos1/conf

这里面有3个文件,分别为authz、passwd、svnserve.conf;

将authz和passwd这2个文件复制到/usr/local/svn目录下;

删除当前目录(/usr/local/svndata/repos1/conf)下的authz、passwd;

修改当前目录(/usr/local/svndata/repos1/conf)下的svnserve.conf;

重点是修改这4个参数

anon-access = none
auth-access = write

password-db = /usr/local/svn/passwd    //这也是为什么上面讲passwd复制到/usr/local/svn路径下的原因

realm = XXXXX   //这是svn连接时的提示信息

切换路径至/usr/local/svndata/repos1/hooks

复制post-commit.tmpl文件并且命名为post-commit,   命令如下: cp post-commit.tmpl  post-commit

修改post-commit文件的属性,增加可执行权限,            命令如下:chmod -R +x post-commit

修改post-commit文件,,在末尾添加如下内容,把末尾几行没有注释掉的注释掉,修改内容如下:

WEB= /home/wwwroot/website1/                     //这里指向的是你web发布存放代码的路径
export LANG=en_US.UTF-8
/usr/local/svn/bin/svn update $WEB --username 用户名 --password '密码'

至此版本库1修改完毕,同样修改版本库2,

关闭SVN,方法如下:

查看svn进程是否已经启动,ps -ef|grep svn        然后输入 kill 进程号 杀死该进程

启动SVN

切换到/usr/local/svn/bin目录下

输入命令:./svnserve -d -r /usr/local/svndata                      //注意,这里只输入到版本库的父母录即可,这样会加载里面所有的版本库

服务器上检出
./svn co svn://本机ip地址/repos1   /home/wwwroot/website1

./svn co svn://本机ip地址/repos2   /home/wwwroot/website2

结合 二;

引言 --- 上次我们介绍了 linux 上面安装 SVN 这次我们介绍 使用 post-commit 钩子,完成服务器自动更新

什么是 post-commit

利用SVN的POST-COMMIT钩子自动部署代码 我们在开发的过程将代码提交到SVN后使用SVN的hook,通过post-commit脚本,在目 标文件夹根下执行svn update操作,将更新内容同步到测试环境,这样开发调试非常方便。

如何做

  1. 当我们安装建立好远端仓库后目录结构如下

进入 hooks 目录

shell cd hooks

我们可以看到有个 post-commit.tmpl 的文件。 这是官方提供的一个 template 。我们直接 copy 这个文件

shell cp -f post-commit.tmpl post-commit

注意: copy 后的文件没有后缀名称

  1. 编辑 post-commit 文件

shell vi post-commit

删掉除了第一行 #!/bin/sh 之后的所有文件 然后输入

```shell
#!/bin/sh

/usr/bin/svn update --username wenpeng --password wp113000 /home/wechat_service
# svn 命令路径 + update --username 您的用户名 --password 您的密码 您的服务器代码项目目录
```

  1. 即将完成 --- 最后一步 -- 修改权限

shell chmod +x post-commit

  1. Checkout一份代码到您的服务器代码项目目录

shell /usr/bin/svn checkout svn://127.0.0.1/wechat /home/wechat_service

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

单仓库配置;

一;

http://www.linuxidc.com/Linux/2016-01/127679.htm

安装步骤如下:

1、yum install subversion

2、输入rpm -ql subversion查看安装位置,如下图:

可以看到 svn在bin目录下生成了几个二进制文件。

再输入/usr/bin/svnversion --version 就可以查看svn的版本,这样就说明svn安装成功,如下图:

3、创建svn版本库目录

mkdir -p /var/svn/svnrepos

4、创建版本库

svnadmin create /var/svn/svnrepos

执行了这个命令之后会在/var/svn/svnrepos目录下生成如下这些文件

5、进入conf目录(该svn版本库配置文件)

authz文件是权限控制文件

passwd是帐号密码文件

svnserve.conf SVN服务配置文件

6、设置帐号密码

vi passwd

在[users]块中添加用户和密码,格式:帐号=密码,如dan=dan

7、设置权限

vi authz

在末尾添加如下代码:

[/]

dan=rw

w=r

意思是版本库的根目录dan对其有读写权限,w只有读权限。

8、修改svnserve.conf文件

vi svnserve.conf

打开下面的几个注释:

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

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

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

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

realm = /var/svn/svnrepos # 认证空间名,版本库所在目录

9、启动svn版本库

svnserve -d -r /var/svn/svnrepos

10、在Windows上测试

1.安装svn

  1. yum -y install subversion

2.建立版本库目录并配置

  1. mkdir -p /var/www/svndata
  2. svnserve -d -r /var/www/svndata

3.建立版本库:创建一个新的Subversion项目

  1. svnadmin create /var/www/svndata/project

4.配置允许用户kinder访问

  1. cd /var/www/svndata/project/conf
  2. vi svnserve.conf
  1. [general]
  2. anon-access=none
  3. auth-access=write
  4. password-db=passwd
  5. vi passwd
  6. [users]
  7. kinder=123456

5.客户端连接

(如果svn未开启,进行开启操作)

  1. svnserve -d -r /var/www/svndata
    1. svn co svn://127.0.0.1/project

linux 下 svn配置;以及多仓库配置的更多相关文章

  1. Linux下SVN部署/安全及权限配置,实现web同步更新

    转自:http://www.cnblogs.com/me115/archive/2013/04/07/3002058.html 本文包含以下内容: SVN服务器安装 SVN权限管理 SVN使用SASL ...

  2. Linux下svn服务器的安装与配置-备份-恢复-计划任务

    简介:SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上很多版本控制服务已从CVS迁移到Subvers ...

  3. linux下svn客户端安装及环境配置(转)

    一.    源文件编译安装.源文件共两个,为: 1.   下载subversion源文件 subversion-1.6.1.tar.gz http://d136.d.iask.com/fs/800/1 ...

  4. Linux下SVN服务器搭建配置

    Linux下SVN服务器搭建配置 1.SVN服务安装 yum install subversion 2.创建SVN代码仓库 mkdir /data/svn svnadmin create /data/ ...

  5. Linux下SVN服务器安装配置及客户端安装说明

    原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_ ...

  6. 转载-Linux下svn搭建配置流程

    Linux下svn搭建配置流程     一.    源文件编译安装.源文件共两个,为: 1.   下载subversion源文件 subversion-1.6.1.tar.gz http://d136 ...

  7. linux下svn的安装与配置

    ---恢复内容开始--- linux下svn的安装与配置 Linux发行版本:CentOS6.5 1.安装subversion sudo yum -y install subversion 2.创建s ...

  8. linux下svn(subversion)服务端添加工程及配置权限

    linux下svn(subversion)服务端添加工程及配置权限 转载请注明源地址:http://www.cnblogs.com/funnyzpc/p/9010507.html 此篇我只是将所做过的 ...

  9. Linux下SVN server 的使用及权限配置

    [Linux下SVN server 的使用及权限配置] 参考:http://www.cnblogs.com/heinoc/p/3805779.html

  10. Linux 下 SVN 的安装和配置

    SVN 是一个自由开源的版本管理系统,它可以按照时间的顺序去管理文件.目录以及对其进行的修改.于今,它被广泛的用于互联网公司的项目版本管理中 工作原理 它的工作原理如下图所示 它是由一个SVN服务器和 ...

随机推荐

  1. NOIP 模拟 $12\; \text{简单的区间}$

    题解 签到题 求区间和为 \(k\) 的倍数的区间,我们可以转化为求左右两个端点,其前缀和相等 对于区间最大值,我们可以把其转化为一个值,它能向左,向右扩展的最远边界,一个单调栈即可 我们设一个值 \ ...

  2. JavaWeb单体项目的分层设计与实现

    1.概述 为什么要把一个完整的项目(Project)按层拆分成多个模块(Module)? 1)使项目层次更加的清晰: 2)提高代码的复用性: 3)细化分工: 4)解耦. 是不是听起来很高大尚,今天就简 ...

  3. WPF - 简单的UI框架 - 仪表盘

    源码链接:https://github.com/DuelWithSelf/WPFEffects 参考:https://www.cnblogs.com/duel/p/duel_clock.html 更新 ...

  4. C++面试题(四)——智能指针的原理和实现

    C++面试题(一).(二)和(三)都搞定的话,恭喜你来到这里,这基本就是c++面试题的最后一波了.     1,你知道智能指针吗?智能指针的原理.     2,常用的智能指针.     3,智能指针的 ...

  5. SSM整合二

    总结 <!-- 批量删除 --> <delete id="deleteAll"> delete from tbl_emp where emp_id in & ...

  6. Mysql 修改本地密码

    第一步 update user set authentication_string=password('root') where user='root' and host='localhost'; 第 ...

  7. rollup 使用babel7版本的插件rollup-plugin-babel,rollup-plugin-babel使用报错解决办法。

    最近在研究rollup,想吐槽下rollup的官方文档写的真的太简单了,而且照着文档一步步来还报错,说明文档年代有点久远啊... 照着文档使用rollup-plugin-babel报错,首先打开rol ...

  8. 解析ThreadPoolExecutor类是如何保证线程池正确运行的

    摘要:对于线程池的核心类ThreadPoolExecutor来说,有哪些重要的属性和内部类为线程池的正确运行提供重要的保障呢? 本文分享自华为云社区<[高并发]通过源码深度解析ThreadPoo ...

  9. Learning ROS: Using a C++ class in Python

    http://wiki.ros.org/ROS/Tutorials/Using%20a%20C%2B%2B%20class%20in%20Python This tutorial illustrate ...

  10. K8S命令行工具——kubectl

    1.kubectl概述 2.kubectl命令的语法 例子: 3.kubectl子命令使用分类 (1)基础命令 (2)部署和集群管理命令 (3)故障和调试命令 (4)其他命令 4.kubectl命令例 ...