centos svn服务端的部署和同步web端

一.SVN简介


       SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。        

二.安装SVN

1.安装SVN

       yum  -y  install  subversion

2.查看安装内容与位置 

    rpm -ql subversion

3.建立SVN根目录 

   mkdir  /home/svn

4.新建版本库:TestCode 

   svnadmin create /home/svn/ TestCode

     注:执行完后,/data/svn/TestCode目录下文件说明

README.txt   版本库的说明文件
conf              配置文件件夹(后续操作最多的文件夹)
db                SVN数据文件文件夹
format          当前版本库的版本号
hooks           SVN的钩子脚本文件夹
locks            SVN的文件锁相关的文件夹

4.TestCode库添加用户、分配权限 

    A.配置SVN
     vim /home/svn/ TestCode /conf/svnserve.conf

     anon-access=none     #去除文件前的注释,将read改为none,防止匿名访问
     auth-access=write    #去除文件前的注释
     password-db=passwd   #去除文件前的注释
     authz-db = authz     #去除文件前的注释,访问权限配置,非常重要,不打开,分组权限不生效

           注:上面的内容要顶格否则会报错


   B.添加访问TestCode用户

    vim /home/svn/TestCode/conf/passwd

    添加一行

    yang = yang


  C.设置添加的用户权限

    vim /home/svn/TestCode/conf/authz

    添加

    [/]

    yang = rw

    * =


  D.防火墙开放SVN端口通行

      vi /etc/sysconfig/iptables

      -A INPUT -p tcp -m tcp --dport 3690 -j ACCEPT

     重启防火墙使其生效


  E.开启SVN服务

    svnserve -d -r /home/svn

三.SVN仓库同步web根目录

      前置条件

           打开仓库和web根目录的读写权限


    开始配置

          cd /home/svn/TestCode/hooks

    cp post-commit.tmpl post-commit
    
    #!/bin/sh
    export LANG=zh_CN.UTF-8
    /usr/bin/svn update --username yang --password yang /home/wwwroot/TestCode --force --no-auth-cache
    
    注:上线的TestCode就是仓库的名字下面check的时候会自动创建不需过问

    修改文件的可执行权限
    chmod 755 post-commit

	
    初次同步需要先check一下
    svn checkout svn://{您的服务器地址}:{端口号}/test .    //词条要注意两点,一后面要加上空格和一个点,二这个命令是在网站更目录里面同步的



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CentOS上实现SVN与Active Directory(AD)的同步,可以按照以下步骤进行操作: 1. 首先,确保已经安装了subversion和svnserve。可以使用以下命令进行安装: ``` yum -y install subversion svnserve ``` 2. 创建两个SVN版本仓库,一个用于存储服务端代码(server),另一个用于存储部署代码(deploy)。可以使用以下命令创建: ``` mkdir -p /data/svn/server mkdir -p /data/svn/deploy svnadmin create /data/svn/server svnadmin create /data/svn/deploy ``` 3. 停止SVN服务,可以使用以下命令停止: ``` killall svnserve ``` 4. 在SVN服务器上设置钩子(hooks)来实现代码自动部署。可以使用hooks/post-commit钩子来触发代码部署。具体操作可以参考SVN的文档或者相关教程。 5. 在本地创建三个分支:deploy、server和server_pub。deploy分支用于模拟开发、运维等人员修改发版等脚本的本地分支;server分支用于模拟开发等人员提交服务端代码到SVN的本地分支;server_pub分支用于工作站拉取最新代码的本地分支,也是同步到目标服务器的内容所使用的分支。可以使用以下命令创建: ``` mkdir -p /data/svnTest cd /data/svnTest svn co svn://127.0.0.1/deploy svn co svn://127.0.0.1/server svn co svn://127.0.0.1/server server_pub ``` 至于SVN与AD的同步,可以使用LDAP认证来实现。具体的配置步骤和设置可以参考SVN的文档或者相关教程。 #### 引用[.reference_title] - *1* *3* [centos7下Jenkins+SVN搭建自动构建和部署](https://blog.csdn.net/inininin123/article/details/121598135)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [CentOs6.8离线安装svn,并设置自动更新](https://blog.csdn.net/lx_asymmetric/article/details/122646956)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值