我们正在评估CI环境,有一个数字:
TeamCity,Go,CCnet,BuildForge,TeamBuild,FinalBuilder Pro,Visual Studio Team System。
我在评估CCnet和Go时遇到了最大的困难
它们各自的优缺点是什么?
发布于 2011-02-15 05:39:11
卢卡斯
首先,警告一句--我在这个领域为一家供应商工作(Urbancode - AnthillPro的家伙)。/disclaimer
我认为这取决于你真正想要从这个工具中得到什么,很难根据你选择的工具来猜测。您的列表中有免费工具、廉价工具、中等工具和昂贵工具。如果你希望为一个大企业创建一个构建基础设施,昂贵的人更合适,而如果你只是建立一个团队级别的系统,开源可能是可以的。
除了可伸缩性之外,Go (和AnthillPro )这样的工具与CC.Net之间的最大区别可能是在构建完成后您希望使用它们做什么。如果在构建之后,您所要做的只是发送一封电子邮件,那么一个基本的、团队级别的CI系统可能是一个很好的选择。相反,如果您希望将其部署到一个测试环境中,则任一系统都可以满足需求。如果你想通过六个测试环境部署一个构建,获得一些批准,然后部署到生产环境,并在整个过程中使用完整的审计跟踪,像CC.Net这样的东西是不会起作用的。你现在看到的是世界上的Go、BuildForges和Anthill。
像集成这样的事情也是一件大事--这个工具必须与你使用的其他工具协同工作。
发布于 2011-02-15 22:52:07
Eric的回答非常有趣。
在我们公司,我们使用CC.net进行CI和部署。但是,cc.net只是一个管理我们构建中使用的所有其他工具的工具(主要是msbuild,但也包括sql部署、nunit、iis管理……)。因此,我们不能说cc.net负责部署任务,它只是启动一个msbuild脚本来完成这项工作,并将日志聚合到用户友好的仪表板。
我要补充的是,如果你寻找一个全局的CI工具(CI +构建脚本+部署),你可以忘记cc.net。但是如果你有msbuild、NAnt或任何构建/脚本语言的知识,你就可以使用它。后者的优点是您的构建是可重用的,如果您更改了CI工具,您仍然可以使用它们,如果您使用TFS构建脚本,我不确定您是否可以将其与其他工具一起使用...
我们用CC.net + MsBuild做的事情:
网站部署
至于Go,我从来没有试过,对不起。你也可以考虑哈德森(甚至对于.Net)。
https://stackoverflow.com/questions/4973724
复制相似问题