svn代码发版的脚本分享

 

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

首先在发布机上创建一个发版目录
[root@huanqiu ~]# mkdir -p /Data/webroot_svncode/Online_app

然后将svn里的代码下载到发布机本地的发版目录里
[root@huanqiu ~]# cd /Data/webroot_svncode/Online_app
[root@huanqiu Online_app]# svn checkout svn://112.168.19.120/huanqiu_app             //svn checkout一般都是目录
[root@huanqiu Online_app]# ls
huanqiu_app
[root@huanqiu Online_app]# cd huanqiu_app
[root@huanqiu huanqiu_app]# ll
huanqiu.war                   //这个就是开发放在svn仓库里的war包

这样后面要想再将svn里最新修改的代码拿到发布机本地,只需要切换到发版目录下的svn目录里进行更新命令即可!
[root@huanqiu Online_app]# cd huanqiu_app           //一定要切换到svn对应代码目录下进行更新命令
[root@huanqiu huanqiu_app]# /usr/bin/svn update
At revision 20.
[root@huanqiu huanqiu_app]# ll                    //下面就是更新后的最新代码包
huanqiu.war

下面附上一个简单的发版脚本:
将代码发布到远程线上服务器上(脚本中的22022是远程服务器的ssh端口);即将最新代码版本发布到线上后,重启线上的tomcat服务:

[root@huanqiu huanqiu_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/huanqiu_app
/usr/bin/svn update

/usr/bin/ssh -p22022 root@${REMOTE_SERVER_IP} "rm -rf /Data/app/tomcat-7/webapps/huanqiu*";
/usr/bin/rsync -e "/usr/bin/ssh -p22022" -avpgolr /Data/webroot_svncode/Online_app/huanqiu_app/huanqiu.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";
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值