2009-09-30 134 views
0

我是一个独立开发人员,正在研究诸如MSBuild/NAnt之类的工具以改进我的构建过程。我的项目文件开始对构建后事件变得混乱,并且有一些分析工具我想运行一些而不是其他的。我想重新获得订单并将所有内容定义为构建XML文件。推荐的构建目标

我为构建目标的想法是:

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

我在正确的轨道上吗?我应该在.NET开发中使用哪些构建目标?

回答

2

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

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

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

+0

顺便说一句,刚发现没有真正需要发布 - 构建目标。有一种名为'TFSDeployer'的工具,可以这样做,当构建的BuildQuality发生变化时,它将启动一个可定制的脚本。 Codeplex上可以找到'TfsDeployer'工具。 – 2009-10-07 10:47:22

0

下面的一些更适用于团队开发。

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