使用Visual C++和C#进行堆栈的持续集成

unj*_*nj2 6 c# c++ continuous-integration cruisecontrol jenkins

请推荐一个良好的持续集成,它将构建并集成.net堆栈和visual c ++.

我得到的一些建议是

  1. 詹金斯
  2. 巡航控制
  3. TeamCity的

由于项目的多语言性质,您会推荐哪种持续集成解决方案?

Bri*_*lis 5

我已经用了好几年了.下面的一些答案表明,大部分工作都将生成您自己的构建脚本.在我的经历中也是如此.我们在构建过程中使用了MSBuild和Powershell脚本的组合,这些脚本可以在任何CI工具下运行,因此选择一个可以归结为您在定制,与其他系统的集成,性能和便于使用.

简短回答:

我推荐詹金斯.到目前为止,它似乎是上述品质的最佳组合.它有大量的插件,一些本地化,并由OSS社区积极开发.

答案很长:

  • 我从Cruise Control .Net开始.它很容易配置文本文件,我发现它非常可靠.但是,我们之所以远离它,是因为Thoughtworks正朝着付费产品(Cruise,现在Go)迈进,未来的发展受到了质疑.从那时起,一个新的团队就已经开始了这个项目,但是从那以后,对于未来的发
  • 我们搬到了TeamCity,这是免费的,并且有一个很棒的ajax-y用户界面.它易于设置和开始,并具有许多分布式构建功能.我们退出使用TeamCity有几个原因.服务器做了很多东西,对我们的基本需求来说有点过分.即便如此,它也不是很可定制的(参见时区和通知内容),我们经常发现管理UI令人困惑.这一切仍然没问题,但我们的性能问题也在不断恶化.我们从开箱即用的标准HSSQLDB开始,当我们开始遇到性能下降时将我们的安装移动到SQL服务器,然后由于性能持续降低而不得不退出使用服务器.我不知道罪魁祸首是什么,但我找不到任何清理工作,这可以解释不断恶化的性能,因为Tomcat Web服务器与SQL Server争夺资源,即使没有活动的构建运行.我确信这是我的错,我错过了一些关键设置或需要为服务器提供更多内存,但这是一个共享实用程序框,我们没有CC.Net的这些问题,最重要的是,我不是Java/Tomcat的家伙并没有太多额外的时间来继续与这些问题作斗争.
  • 我们现在搬到了詹金斯.到目前为止它似乎工作得很好,但我们只是暂时使用它.这很容易设置,似乎没有像TeamCity那样多的资源,并且有一些荒谬的插件.到目前为止唯一的缺点是像许多OSS产品一样,它似乎没有最好的文档,它做了很多,我可能会调整旋钮一段时间,以便按照我们想要的方式设置它.


Rit*_*ton 0

在不同的商店实现这三个之后,我选择了以上所有。选一个。