svn 版本管理与自动部分发布(转)
2015-06-02 13:25
316 查看
作为团队开发项目时,会遇到项目的版本管理,测试部署与发布部署,下面是摘至他人的关于版本管理和自动部署的方案。
svn自动部署的实现:
使用svn的hook功能
1、在版本库的hooks目录下面,有一些基于事件触发的执行脚本,比如post-commit, 去掉后缀.tmpl
2、编辑svn代码库服务器上文件: svn/test/hooks/post-commit
3、 在客户端测试,并且要在comment中加入 auto_deploy,否则不会触发自动部署的操作
参考:
[1] SVN本地开发、测试环境版本控制-自动发布生产环境[2014-10-08].http://www.open-open.com/lib/view/open1376871583553.html
svn自动部署的实现:
使用svn的hook功能
1、在版本库的hooks目录下面,有一些基于事件触发的执行脚本,比如post-commit, 去掉后缀.tmpl
2、编辑svn代码库服务器上文件: svn/test/hooks/post-commit
#!/bin/sh REPOS="$1" REV="$2" export PATH="/usr/local/svn/bin:$PATH" #由于代码是apache的进程用户www运行,所以需要设置环境变量 export LC_CTYPE=en_US.UTF-8 #防止提交的文件名存在非字母字符。 if (svnlook log -r $REV /home/http/repository/svn/test | grep "auto_deploy" ) #当用户提交时注释中写上"auto_deploy"的时候,就自动部署到apache目录,否则不部署。 then echo "`date` 'auto depoly command received" >> /tmp/test_svnautocommit.txt #这一行仅作调试使用 svn export "http://192.168.16.48/repo/svn/test/trunk/test_website" /home/http/html/test_website --force fi
3、 在客户端测试,并且要在comment中加入 auto_deploy,否则不会触发自动部署的操作
参考:
[1] SVN本地开发、测试环境版本控制-自动发布生产环境[2014-10-08].http://www.open-open.com/lib/view/open1376871583553.html
相关文章推荐
- mqtt学习资料
- ubuntu 下安装 JBoss EAP-6.4.0
- Python Version 2.7 required which was not found in the registry 问题解决
- @synchronized (object)使用详解
- cellForRowAtIndexPath 设置图片
- html的文档要utf-8不能是unicode
- linux系统缓存机制
- 哪些新科技在改变销售管理流程
- 五月学习总结
- 暴风科技背后的秘密:不可忽视的华为因素
- Mac OS X 10.9自带php-fpm的配置使用和扩展安装
- 百度APIStore
- Android View坐标getLeft, getRight, getTop, getBottom
- 一个数如果恰好等于它的因子之和,这个数就称为“完数。例如6=1+2+3.编程找出1000以内的所有完数。
- 20条Linux命令面试问答
- 妙趣横生的算法学习2
- git远程共享库push代码出错
- java事件处理机制
- Android:Layout_weight的深刻理解
- jquery 不支持$.browser