我们目前正在评估与 Visual Studio 2008 (C#) 和 Subversion 交互的不同应用程序,以自动构建我们的核心库。我们希望每晚执行一次构建,并通过电子邮件将所做的更改列表发送给每个开发人员,或者将最新版本推送到每个工作站。您对这些工具有何经验?有什么建议?
推荐软件
推荐文章
我们目前正在评估与 Visual Studio 2008 (C#) 和 Subversion 交互的不同应用程序,以自动构建我们的核心库。我们希望每晚执行一次构建,并通过电子邮件将所做的更改列表发送给每个开发人员,或者将最新版本推送到每个工作站。您对这些工具有何经验?有什么建议?
推荐软件
推荐文章
Cruise Control.net (ccnet) 可以满足您的所有需求。它很容易使用,只要确保如果你要将它作为服务运行,你给它一个帐户并且不要让它作为网络服务运行,这样你就可以在 Intranet 盒子上赋予它权限并让它做xcopy 部署。
它具有各种电子邮件模式,失败时,全部,失败后修复等等。
Hudson是我见过的最简单的持续集成/日常构建工具。不确定它是否满足您的所有要求。
看看 JetBrain 的(ReSharper 背后的人)TeamCity
我已经将cc.net与 nant 和 msbuild 一起使用并取得了巨大成功,强烈推荐它。
在我的上一个雇主,我用 cc.net 建立了一个构建服务器。预计至少需要一两天的时间来设置它。我将 cc.net 与 nant 和 msbuild 一起使用。这些项目在功能上有很多重叠,因此考虑如何设置所有内容可能是个好主意。
我最终解决的设置是服务器上的 cc.net 以从 subversion 中检索项目并启动 nant 脚本。nant 用于调用 msbuild 来构建 Visual Studio .sln 文件并执行所有其他构建步骤,例如运行测试等。
我也快速浏览了teamcity。乍一看,它看起来比 cc.net 好多了,但我还没有时间尝试。这当然值得一试。
我使用 CC.Net 以及 SubVersion 和 MSBuild 来完成此任务。这是一个很好的实施指南,我发现它非常有帮助。
关于使用 cc.net 和 msbuild 的一些花絮。如果您正在构建 C/C+= 项目,那么 msbuild 至少在 VS 2005(可能更早)中是不可靠的。我没有用 VS 2008 测试过。我们发现有时 msbuild 可以正常工作,有时不能。在尝试解决该问题时,我们发现 vcbuild.exe 在构建 C/C++ 解决方案时似乎可以很好地代替 msbuild。
我正在使用 hudsons Jenkins 进行日常构建。它真的很容易设置和维护。它有很多插件可以完全满足我们的要求。