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";
  • 相关阅读:
    深入理解jsonp跨域请求原理
    vue项目性能优化总结
    脱离Office约束,C#结合Mpxj组件完美解析MSProject(.mpp)文件
    将list转换成DataTable
    json时间格式化
    C# DES加密解密
    asp.net mvc ViewBag常用操作
    Jquery ajax与asp.net MVC前后端各种交互
    存储过程实现树形目录外联其他表实现每个节点的统计
    CSS自定义右键菜单
  • 原文地址:https://www.cnblogs.com/kevingrace/p/5872727.html
Copyright © 2011-2022 走看看