基于svn的版本发布工具


问题起源:
在实际生产环境中,项目目录下是不能有.svn文件,因为有这个文件,就有可能会有源代码泄露的漏洞;所以我们不能直接在项目目录下svn update;


解决思路:
既然不能直接在项目目录下svn update,我们可以在一个用户访问不到的目录进行svn update,然后把所有文件拷贝到项目目录下去;然后删除项目目录下的.svn文件;以这样的思路写一个shell脚本后,发布代码只需要执行一下这个shell脚本;相当的便利。


shell脚本代码:


#!/bin/bash
#功能:从svn发布代码到生产环境
#作者:木长
#日期:2016/5/5


#SVN的目录
SVN_PATH=/svn/project/blog/;
#生产环境的目录
BLOG_PATH=/usr/local/nginx/html/blog/


if [ -d $SVN_PATH ];then
	cd $SVN_PATH
	echo "开始从svn更新文件...";
	svn update
	cd ../
	echo "当前所在的目录为:`pwd`";
	echo "正在从 $SVN_PATH 同步到 $BLOG_PATH ...";
	rsync -rq  $SVN_PATH* $BLOG_PATH;
	cd $BLOG_PATH
	echo "正在删除$BLOG_PATH 下的 .svn文件";
	find . -type d -name ".svn"|xargs rm -rf
else
	echo "不存在 $SVN_PATH 目录;";
fi



以下代码仅供参考,具体还得根据环境来;上面的代码也只是简单的实现了基本思路和功能

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值