我的团队使用中型产品,在单个双核机器上构建大约需要2个小时。 作为提高生产力的努力的一部分,我正在寻找改进构建过程的替代方案。
目前我们使用VS2005解决方案构建C ++代码和.NET代码,我们还使用makefile构建了一些遗留代码,并使用installshield打包产品。我们还有用UnitTest ++,Nunit,CPPUnit编写的单元测试以及我们自己编写的一些测试,没有任何测试框架。一切都由我们编写的一组Perl脚本协调。
我正在寻找一种产品,或一套产品,或一堆非相关产品,这些产品将允许我执行以下操作:
改善建筑时间。我尝试使用Incredibuild并行构建并取得一些成功。我很乐意找到更多的替代品(更便宜的???)
改进构建过程定义。我需要一些东西来替换我们复杂的perl脚本,这些东西可以让我轻松定义构建过程。
提高我们发现构建中问题的能力(可能是用于查看构建输出的Web界面,突出显示编译错误,收集构建时间和构建失败的统计信息等。
任何其他可以帮助我们改进构建管理的好功能。
答案 0 :(得分:3)
考虑NAnt:http://nant.sourceforge.net/,CruiseControl:http://en.wikipedia.org/wiki/CruiseControl和更快的构建系统。在http://confluence.public.thoughtworks.org/dashboard.action
上有一些与.NET相关的链接编辑:Gradle可能是现在最好的选择。
答案 1 :(得分:2)
尝试使用FinalBuilder 非常全面的构建管理工具
答案 2 :(得分:1)
几年前我在以前的工作中使用过Automated QA's Automated Build Studio,它非常好而且相当便宜。从那时起我就没有使用它,所以我建议你看看它。
如果您有MSDN订阅,则应该查看TFS。 TFS Build非常强大,并且集成到Visual Studio中,与Team System / TFS Source Control密切配合(您没有说明您正在使用的源控件)。
答案 3 :(得分:1)
Sakin,
我认为你可能正在寻找两种不同的工具 - 尽管偶尔你会发现它们被打包在一起。
一个工具是构建管理系统,它可以调度构建,显示输出,收集统计信息等。像FinalBuilder,CruiseControl和AnthillPro这样的工具在该空间中播放。
另一个工具是将您的构建拆分为可并行化的部分并加速构建的工具。 Incredibuild非常擅长他们在这方面的工作,当然比一些替代方案便宜。一些开源工具(例如gmake)内置了免费选项,但我的理解是你需要做一些非常认真的工作才能使用解决方案文件。
你应该可以随意混合搭配。我们有客户使用Anthill和Incredibuild,gmake以及其他一些构建速度工具。
答案 4 :(得分:1)
我们有一个类似于你的过程,虽然它不是VS项目。直到最近,我们使用perl脚本和tinderbox来构建和跟踪构建和单元测试的状态。我们最近跳到了Hudson,看起来效果很好。
不要被java标签推迟,我们的项目是c / c ++,它们工作正常。 Hudson可以执行shell命令,因此我们可以构建我们的项目(makefile)并运行我们的单元测试。现在我们将它设置为定时构建,当它完成时(如果成功)并行地完成所有单元测试。
这是一个很棒的系统,值得一试,看看它是不是你要找的东西。它记录了控制台输出,并有大量的好插件(日志和图表警告计数,磁盘空间使用大小,基于CM更改)和一个很好的网络界面供团队观看。
哦,是的,它是免费的..
答案 5 :(得分:0)
我不会建议HUDSON ..对此没有太多的吹嘘......
hudson是有限的工具,除了它可以做得更多,并有一个更好的bui8lt核心架构
建议使用anthillpro和incredibuild是一个很好的建议!!
答案 6 :(得分:-1)
关于“哈德森有广泛的插件......等等等等”,这真的是假的..
哈德森无法实现的是它作为插件的核心架构
令人惊讶的是,如果我必须屏蔽密码或任何凭据,我不能在没有“密码屏蔽”插件的情况下执行此操作..
理想情况下,如果系统是“企业可扩展的”,则应将此屏蔽内置到其核心
中这只是一个例子..我对这些工具有明确的分析,但无法在此处上传文件
转移到另一边
哈德森“看起来和感觉”“漂亮又可爱”而且重量相对较轻