zoukankan      html  css  js  c++  java
  • linux 下 svn配置;以及多仓库配置

    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

    hook 目录结构

    我们可以看到有个 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

    [plain] view plain copy
     
    1. yum -y install subversion  

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

    [plain] view plain copy
     
    1. mkdir -p /var/www/svndata  
    2. svnserve -d -r /var/www/svndata  

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

    [plain] view plain copy
     
    1. svnadmin create /var/www/svndata/project  

    4.配置允许用户kinder访问

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

    5.客户端连接

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

    [plain] view plain copy
     
    1. svnserve -d -r /var/www/svndata  



    [plain] view plain copy
     
      1. svn co svn://127.0.0.1/project  
  • 相关阅读:
    005 字符串
    004 变量
    003 python中的内置函数
    002 如何在一台PC上装两个版本的python
    在github上创建新的分支(包括管理分支)
    使用git工具上传自己的程序到github上
    004 Java的一次面试题,学长列举
    为什么分布式一定要有Redis?
    027 ResourceBundle.getBundle方法
    Jenkins下载安装
  • 原文地址:https://www.cnblogs.com/songyanan/p/9231115.html
Copyright © 2011-2022 走看看