zoukankan      html  css  js  c++  java
  • svn代码发版的脚本分享

    背景:开发将其代码放到svn里面,如何将修改后存放到svn里的代码发布到线上?
    简单做法:写个shell脚本,用于代码发版。比如开发的代码存放svn的路径是:svn://112.168.19.120/kevin_app

    首先在发布机上创建一个发版目录
    [root@kevin ~]# mkdir -p /Data/webroot_svncode/Online_app
     
    然后将svn里的代码下载到发布机本地的发版目录里
    [root@kevin ~]# cd /Data/webroot_svncode/Online_app
    [root@kevin Online_app]# svn checkout svn://112.168.19.120/kevin_app             //svn checkout一般都是目录
    [root@kevin Online_app]# ls
    kevin_app
    [root@kevin Online_app]# cd kevin_app
    [root@kevin kevin_app]# ll
    kevin.war                   //这个就是开发放在svn仓库里的war包
     
    这样后面要想再将svn里最新修改的代码拿到发布机本地,只需要切换到发版目录下的svn目录里进行更新命令即可!
    [root@kevin Online_app]# cd kevin_app           //一定要切换到svn对应代码目录下进行更新命令
    [root@kevin kevin_app]# /usr/bin/svn update
    At revision 20.
    [root@kevin kevin_app]# ll                    //下面就是更新后的最新代码包
    kevin.war
     
    下面附上一个简单的发版脚本:
    将代码发布到远程线上服务器上(脚本中的22022是远程服务器的ssh端口);即将最新代码版本发布到线上后,重启线上的tomcat服务:
     
    [root@kevin kevin_app]# cat /Data/webroot_svncode/up_Online.sh
    #!/bin/bash
    REMOTE_SERVER_IP="112.168.19.75"
    DEST_DIR="/Data/app/tomcat-7/webapps/"
     
    cd /Data/webroot_svncode/Online_app/kevin_app
    /usr/bin/svn update
     
    /usr/bin/ssh -p22022 root@${REMOTE_SERVER_IP} "rm -rf /Data/app/tomcat-7/webapps/kevin*";
    /usr/bin/rsync -e "/usr/bin/ssh -p22022" -avpgolr /Data/webroot_svncode/Online_app/kevin_app/kevin.war root@${REMOTE_SERVER_IP}:${DEST_DIR};
    sleep 10
     
    /usr/bin/ssh -p22022 root@${REMOTE_SERVER_IP} "/bin/sh /Data/app/tomcat-7/start.sh";
  • 相关阅读:
    关于React的入门级安装和最浅显解释
    Node开发文件上传系统及向七牛云存储和亚马逊AWS S3的文件上传
    AWS S3 CLI的安装和配置
    用Node完成AWS S3的Upload流程之全世界最简版
    在Web应用中接入微信支付的流程之极简清晰版
    storm metrics
    hadoop 2.2.0 centos 6.4 x64 编译
    如何打造核心竞争力(经验总结)
    mysql event scheduler机制 与 动态表名创建
    hadoop 2.2.0 安装
  • 原文地址:https://www.cnblogs.com/kevingrace/p/5872727.html
Copyright © 2011-2022 走看看