`

ant+cvs实现增量部署

    博客分类:
  • JAVA
阅读更多

因为老大要求增量部署,一直没时间写,终于找点时间搞了一下:

 

思路:

各开发人员将本次需要上线的代码的全路径提到一个文本文件里,然后ant解析文本文件挨个打上线tag,最后统一取该

tag的内容打包,OK

 

其中用到了 ant 的逻辑插件antcontrib

 

ant 版本:apache-ant-1.7.1

contrib版本:ant-contrib-1.0b3

 

注意这两个版本是对应的

 

具体目录和脚本见附件

config目录用于放置本地编译需要的jar包,这些包可能不允许上传也没必要上传到CVS上;

deployfile里的addFile.txt文件为代码路径的文本文件,一次用完后手动该名为当天日期,再新建一个该文件;

temp目录下放置的是操作CVS和构造包目录的内容;

work目录下是ant的工作脚本

 

将contrib的jar放到ant里就行了

 

测试了一下110M的工程需要6分多钟,还是感觉太慢,所以一直没用。各位有没有更快的方法共享下。

 

详情见附件,ant的包太大,自己下吧,是1.7.1版本哦

 

2010-12-16日编辑该脚本对部署逻辑进行了修改:

1:获取需要增量部署的代码列表

2:先按照生产的tag取出所有代码

3:再按照增量的代码列表从CVS覆盖获取-A

4:编译构造文件路径打包

该逻辑第一次需要取全量TAG的代码,以后就只需要取增量的代码就行了,生产包确定后,执行build.xml里的tag任务将

增量的代码打上生产标签,下一个测试周期再重新取一次生产tag的全量代码,如此反复即可。

优点:减少CVS和JAVAC的时间。

本次修改后的包见附件cc_ant.rar

分享到:
评论
2 楼 雁行 2012-04-05  
svn根本就不需要这么罗嗦的实现。
版本比较,直接出增量文件,java文件转成class文件即可。
1 楼 rustlingwind 2010-10-19  
谢谢!非常有用!

不过我想知道,用svn的话,你的脚本应该变动不大吧。
还有就是,我现在用 maven,要是 maven 有直接支持的插件就好了。我想自己写maven插件的,但够呛有时间。maven里面调用ant应该没有问题,so 你的脚本应该也可以直接用在maven上了。不过我还得试试,不知道行不行啊。

相关推荐

    CVS 服务器程序 CVSNT 2.0.58d + CVS 客户端工具 TortoiseCVS 1.10.10 (for win7)+ 图示说明

    CVS 服务器程序 CVSNT 2.0.58d + CVS 客户端工具 TortoiseCVS 1.10.10 (for win7)+ 图示说明 最新的版本cvsnt-2.5.03.2382有4.2MB,追新的朋友可以自己上官网下载. 1都安装好软件 2配置服务器端  a 查看运行...

    ant处理cvs时环境安装

    理解以上知识点后,开发者便能有效地使用Ant处理CVS版本控制系统,实现自动化构建和版本控制的集成,提高开发效率。在实际项目中,可能还会遇到各种复杂情况,比如处理冲突、忽略特定文件、合并分支等,都需要根据...

    MyEclipse+CVS的使用 -

    MyEclipse+CVS的使用

    基于html开发的用于qPCR分析的模板文件夹结构+原始Ct数据的统计分析+cvs文件的模板+源码(毕业设计&课程设计&项目开发

    基于html开发的用于qPCR分析的模板文件夹结构+原始Ct数据的统计分析+cvs文件的模板+源码,...还提供了.cvs文件的模板,用于存储要处理的数据(每个主值类型)。 将R项目放在此目录中,因此它是所有其他文件夹的父文件夹

    MyEclipse+CVS的使用

    CVSNT是CVS的一个实现版本,适用于Windows环境。安装步骤包括下载安装文件,然后按照向导操作,最后重启电脑以使CVSNT生效。 **4. CVSNT配置** 配置主要包括启动CVSNT服务,设置Repository configuration,添加项目...

    eclipse +cvs 的基本使用方法

    Eclipse是一款广泛使用的Java集成开发环境(IDE),而CVS(Concurrent Versions System)是一种版本控制系统,用于管理软件项目的源代码。将Eclipse与CVS结合使用,开发者可以在Eclipse中方便地进行版本控制操作,如...

    Eclipse+cvs配置说明

    你可以进行检出(Checkout)、提交(Commit)、更新(Update)等版本控制操作,从而实现团队间的代码同步和版本管理。 请注意,CVS虽然是一种成熟且广泛使用的版本控制系统,但现在已经有了更多先进的替代品,如Git...

    j2ee课件html+linux+cvs+sql

    【标题】"j2EE课件html+linux+cvs+sql"涵盖了四个主要的IT技术领域,它们分别是Java企业版(j2EE)、超文本标记语言(HTML)、Linux操作系统以及版本控制系统CVS和结构化查询语言(SQL)。这些知识点在IT行业中占据...

    Eclipse + CVS 使用技巧.doc

    Eclipse + CVS 使用技巧主要涉及了在Eclipse集成开发环境中使用CVS(Concurrent Versions System)版本控制系统的一些关键操作和注意事项。CVS是一种开源的版本控制系统,它允许开发者跟踪代码的变更并协同工作。 1...

    Eclipse+CVS的基本使用方法

    火龙果软件工程技术中心 很多时候我们在做项目开发时,会用到cvs,现在我给大家介绍一下关于eclipse下怎么使用cvs管理功能,eclipse本身是自带cvs的,我们只要简单设置一下让它连接到cvs服务器上。看下图点击cvs的...

    代码管理工具打包(SVN+TortoiseSVN+SVNeclipse插件+CVS+apache).rar

    综上所述,这个压缩包包含了一套完整的代码管理工具集合,涵盖了从基础的版本控制系统(SVN、CVS)到与之配合的客户端工具(TortoiseSVN)和集成开发环境插件(SVNeclipse),再到服务器端部署(Apache HTTP Server...

    Myeclipse+下配置CVS服务器源代码管理

    本教程将详细介绍如何在MyEclipse环境下配置CVS(Concurrent Versions System)服务器,以便进行有效的源代码管理工作。 首先,CVS是一种开放源代码的版本控制系统,它允许开发者对项目进行历史追踪,同时支持多人...

    讲解Ant的应用

    - 自动地从源代码控制系统(如CVS)获取源代码; - 以适当的顺序编译必要的源文件,并生成部署所需的JAR文件; - 一个构建文件可以在所有支持的平台上执行,确保一致的行为。 Ant的主要优势在于它的跨平台性,使用...

    ECLIPES+CVS

    【ECLIPSE + CVS】是关于如何在Eclipse集成开发环境中使用 Concurrent Versions System (CVS) 进行版本控制的教程。Eclipse 是一款强大的、开源的Java IDE,而CVS则是一种广泛使用的源代码版本控制系统,允许开发者...

    eva_0.4.9+cvs20070723-1_i386.deb

    linux下的QQ,这是deb包的。 在ubuntu-7.0.4下测试通过。

    CVS实现小组同步开发

    《CVS实现小组同步开发详解》 CVS(Concurrent Versions System),是一种广泛使用的源代码版本控制系统,它允许多个开发者协同工作,同步他们的代码修改。本文将详细介绍如何使用CVS和Eclipse集成环境来实现小组的...

    CVS++中文用户手册

    同时,建议在CVS++环境下部署辅助工具,如脚本和Makefiles,以支持复杂的构建需求。 #### 六、CVS++与构建系统的结合策略 在CVS++中,合理的工作模块化和共享文件的构建系统(通过links、mounts、VPATH等)能够...

    LinuX下 CVS 安装部署备份恢复等

    Linux 下 CVS 安装部署备份恢复等 本文档详细介绍了在 Linux 操作系统下安装、部署、备份和恢复 CVS 服务器的步骤,旨在帮助读者快速搭建 CVS 服务器环境。 一、安装 Linux 服务器 在安装 Linux 服务器时,需要...

Global site tag (gtag.js) - Google Analytics