推荐的构建目标

时间:2009-09-30 10:35:03

标签: .net msbuild build-process nant

我是一名独立开发者,正在研究MSBuild / NAnt等工具来改进我的构建过程。我的项目文件开始变得混乱,后期构建事件和分析工具我想运行一些而不是其他人。我想重新获得订单并将所有内容定义为构建XML文件。

我对构建目标的想法是:

  • 调试版本:专为快速编译和部署而设计。没有进行代码分析或检查。
  • 分析构建:执行调试构建,代码分析并生成文档。
  • 部署构建:使用适当的编译器标志进行编译以进行发布。还执行与Analysis Build相同的步骤。

我在这里走在正确的轨道上吗?我应该使用什么构建目标进行.NET开发?

2 个答案:

答案 0 :(得分:2)

我们目前只使用CI(持续集成或调试版本)和Release。 调试版本只包含编译,无代码分析,测试等。

释放是所有魔法发生的地方(与他们在MTV Cribs中总是说的一样):版本控制,代码签名,打包,压缩,混淆,文档等。

我可以想象另一个'发布'或'部署'构建目标,它发布并发布到测试服务器,我决定何时将发布版本推送到我们的测试服务器。

答案 1 :(得分:0)

以下某些内容更适用于团队开发。

我同意限制配置数量 - 每个配置都会增加维护开销。所以Debug被剥离了,而Release有代码分析等。但是我在Release版本上运行CI,所以我不必单独进行CI和Release版本。这也意味着任何发布构建问题都会被签入触发的CI构建捕获,因此开发人员如果破坏了(潜在)版本,就会立即获得反馈。我做的另一件事是发布配置,我更改项目设置以将警告视为错误,因为我喜欢代码免费警告;任何警告都会导致CI构建失败。由于代码分析会创建警告,这意味着任何违反CA规则的行为都将导致CI构建失败,这意味着开发人员可以更快地修复它,从而帮助确保从一开始就获得更高质量的代码。