最近开始将源代码迁移到SVN,于是便考虑到如何从SVN定期获取源码,自动编译并部署以减轻工作量并提高工作效率。通过多方搜集资料并进行研究,基本实现了这个功能。对于每日构建的概念就不具体展开了,可以在各大论坛找到答案。这篇文章主要给大家介绍下CCNET(CruiseControl.NET)的安装配置过程以及针对AOS项目的构建全过程。还有很多问题点没有深入研究,欢迎大家跟帖讨论。

  CCNET主要包括两部分,一是Server用来配置项目和监视文件修改,二是WebDashboard,是显示项目信息及编译信息的WebSite。我们每次提交代码到SVN服务器后CCNET会自动从SVN服务器上获取最新代码并调用MSBuild进行自动编译。
安装前确保已经安装下列软件:
1.源代码管理工具(本文以SVN为例)
2.Web服务组件IIS
3..NET Framework2.0或更高版本
CCNET安装步骤如下:1.安装CruiseControl.NET-1.8.2.0-Setup.exe CCNET服务端。

2.安装完成后会出现此目录:,网上会说在IIS的虚拟目录下出现名为ccnet的虚拟目录。反正我的没有,没关系,手动添加一个名为ccnet的虚拟目录,物理路径就是..\CruiseControl.NET\webdashboard,端口8080,开启服务CruiseControl.NET Server,点击浏览可正常显示就OK了。
3.安装CruiseControl.NET-CCTray-1.8.2.0-Setup.exe CCNET客户端,在步骤2的网页左侧即可下载。

4.找到Server文件夹下的ccnet.config文件进行配置,整个流程都会读取这个文件中的配置信息。每个构建项目都包含触发器(triggers)、源码管理器(sourcecontrol)、构建任务(tasks)、部署发布(publishers)等,还可以配置多个project。这是我成功配置的文件,大家可以参考下:

5.这是可以运行CCNET客户端CCTray了。File->Settings->Build Projects->Add->Add Server->Connecting directly using .NET remoting->OK。这时在右边可用工程列表中将会出现ccnet.config中配置的工程名称,选中后一路点击OK即可完成配置操作。确保CCNET服务开启后,点击右下角的Start Project,CCNET将开始工作。
6.当编译后右下角出现这个图标证明编译成功。
    由于时间比较仓促,目前只是实现了从SVN获取最新代码,进行自动编译并将站点拷贝到发布目录下这些基本功能。还有一些功能,如自动部署、脚本执行、邮件通知运行结果等操作并没有深入展开。如果大家有更好的意见或建议,欢迎拍砖进行讨论。

CCNET+MSBuild+SVN实现每日构建的更多相关文章

  1. CCNET+MSBuild+SVN实时构建的优化总结

    本文不是介绍如何使用CCNET+MSBuild+SVN构建自动编译系统,相关的内容可以从很多地方获取,可以再园子里搜一下. 随着我们的SVN库日益壮大,容量达到10G,几十G 甚至更大时,我们发现自动 ...

  2. 每日构建【Daily Build Using CruiseControl.NET and MSBuild】(转载)

    在上一篇项目 管理实践教程二.源代码控制[Source Control Using VisualSVN Server and TortoiseSVN]中 我们已经讲解了如何使用TortoiseSVN和 ...

  3. 项目管理实践【三】每日构建【Daily Build Using CruiseControl.NET and MSBuild】

    在上一篇项目管理实践教程二.源代码控制[Source Control Using VisualSVN Server and TortoiseSVN]中我们已经讲解了如何使用TortoiseSVN和Vi ...

  4. 在.NET 环境中实现每日构建(Daily Build)--ccnet,MSBuild篇(转载)

    每日构建,对我们团队来说一个全新的概念.随着项目开发的进展,在开发过 程需要及时反馈一些BUG和功能要求的处理情况.而在这种情况下每天或隔一段时间Build一个版本,工作量还是比较大的,所以就特别有必 ...

  5. 使用Flashbuilder/Flashbuilder-plugins搭建Flex工程每日构建(自动化构建)的方法

    前段时间研究flex工程自动编译的时候,遇到了阻碍,就放下了,直到今天每日构建的问题又一次给项目组带来了麻烦,于是我彻底愤怒了. 最后,我的怒火没有白费,写出来以发泄情绪. [基本原理]: adobe ...

  6. Jenkins+MSbuild+SVN实现快速搭建.net持续集成环境(构建、编辑、部署到服务器)

    Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面开始搭建.net持续集成环境 Jenkins和SVN安装这里就不介绍了 一.准备工作 1.Jenkins中系统 ...

  7. Jenkins配置MSBuild实现自动部署(MSBuild+SVN/Subversion+FTP+BAT)

    所要用到的主要插件: [MSBuild Plugin] 具体操作: 1.配置MSBuild的版本 [系统管理]->[Global Tool Configuration]->[MSBuild ...

  8. Windows Server配置Jenkins,实现监测SVN提交自动构建.net4.5的项目

    1,持续集成 概念:http://baike.baidu.com/view/5253255.htm,对于大多数人而言,自动构建/自动测试/自动部署,已经很发挥它的价值了.选择上: 推荐jenkins, ...

  9. Jenkins+MSbuild+SVN实现dotnet持续集成 快速搭建持续集成环境

    Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面开始搭建dotnet持续集成环境 一.准备工作 1.系统管理-->管理插件-->可选插件中找到MS ...

随机推荐

  1. JDBC总结

    今天复习了JDBC的内容,古人说温故知新,真的深有体会了.所以决定用自已的话在此记下,如有不对之处,请高手指教. JDBC连接数据库,采用的是面向接口编程.接口在java.sql和javax.sql包 ...

  2. php_codesninffer phpcs用法学习使用:

    18:34 2016/1/12php_codesninffer phpcs用法学习使用:可以加一个参数设置结果输出为各种格式:如source格式:$ phpcs -s --report=source ...

  3. Mac下各种网络命令的使用

    Mac下各种网络命令的使用(http://blog.51yip.com/linux/745.html) pingwww.baidu.com 会一直ping下去,和windows不一样, windows ...

  4. VS2010+64+OSG3.2.1之五Plugins dae编译

    VS2010+64+OSG3.2.1之五Plugins dae编译 转自:http://blog.csdn.net/nuaaqsm0915/article/details/38978971 Plugi ...

  5. javascript压缩工具

    Google Closure Compiler : http://code.google.com/closure/compiler/ YUI Compressor : http://developer ...

  6. (转)基于socket的TCP和UDP编程

    一.概述 TCP(传输控制协议)和UDP(用户数据报协议是网络体系结构TCP/IP模型中传输层一层中的两个不同的通信协议. TCP:传输控制协议,一种面向连接的协议,给用户进程提供可靠的全双工的字节流 ...

  7. RunLoop和autorelease的一道面试题

    有这么一道iOS面试题 以下代码有没有什么问题?如果有?如何解决? for (int i = 0; i < largeNumber; i++) { NSString *str = [NSStri ...

  8. ZK 页面间参数传递

    1.execution.sendRedirect(url) 当使用方法execution.sendRedirect(url)进行页面跳转时,在url中添加参数:url?test=5: 跳转页面获取参数 ...

  9. Memcache教程 Memcache零基础教程

    Memcache是什么 Memcache是danga.com的一个项目,来分担数据库的压力. 它可以应对任意多个连接,使用非阻塞的网络IO.由于它的工作机制是在内存中开辟一块空间,然后建立一个Hash ...

  10. linux常用命令(一)

    1.linux文件命名规则 1.除了/之外,所有字符都是可以用的. 2.有些字符最好别用,如空格,制表符,退格,@#&-,命令行操作时候可能会出现混淆. 3.避免使用.作为文件开头,linux ...