有没有关于MSBuild脚本的好教程?

时间:2009-08-25 06:50:11

标签: msbuild cruisecontrol.net

我正在开发一个Web应用程序项目,我需要创建一个构建脚本;我可以从cruisecontrol服务器触发的构建脚本。由于nant没有维持多年,我认为MSBuild是可行的方法。

我需要构建脚本能够

  • 编译所有程序集
  • 执行单元测试
  • 对单元测试运行NCover分析
  • 部署数据库(取决于参数)。这实际上是在执行一个工具,因为我最终会编写自己的工具来部署数据库。但是该工具的执行应该是基于某些命令行参数的条件。
  • 以巡航控制可以阅读和理解的格式提供单元测试和覆盖结果。

我认为MSBuild将允许我做所有这些事情。但我不知道从哪里开始。有没有人知道让我开始使用构建脚本的好教程?

9 个答案:

答案 0 :(得分:39)

这是我的第一个教程。很容易理解和遵循:

https://codingcockerel.wordpress.com/2008/04/15/automating-the-build-with-msbuild/

答案 1 :(得分:13)

答案 2 :(得分:9)

Visual Studio博客上有一篇“Getting Started with MSBuild”博客文章,它概述了MSBuild如何与Visual Studio联系起来。这是最近的(2010年2月25日)并使用Visual Studio 2010和随附的MSBuild v4.0。

虽然代码不多。

直到阅读这篇博客,我才知道* .csproj文件本身就是MSBuild文件。而且,项目上下文菜单中的Build,Clean,Rebuild和Publish命令实际上是MSBuild“目标”。

答案 3 :(得分:8)

我在购买Hashimi MSBuild book之前浪费了很多时间,太棒了 - I concur with this review by Steven St Jean

除了对MSBuild脚本编写的优秀全面介绍之外,它还有一个关于执行典型构建自动化程序(例如构建号码等)的食谱部分。显然,最后一个TeamBuild部分与您没有直接关系,但很多主题在所有CI工具中都是通用的。

更新:2nd ed保持趋势,添加必备部分WebDeploy

答案 4 :(得分:7)

几年前我写过这篇文章,并尝试使用新的MSBuild功能保持最新:

http://thomasardal.com/msbuild-tutorial/

答案 5 :(得分:5)

我发现这个MSBuild tutorial by Patrick Smacchia非常有用(虽然我把它看作非初学者)

Best Practices for Creating Reusable Builds, Part 1 from MSDN Magazine by Sayed Ibrahim Hashimipart 2

(我为Brennan教程加了+1)

答案 6 :(得分:5)

在MSDN How to: Write a Simple MSBuild Project上查看此内容。

它的好文章帮助我开始。

以下是pdf of print version的相同内容。

答案 7 :(得分:1)

答案 8 :(得分:1)

我自己也在寻找关于这个主题的信息。

这是一篇很好的文章Versioning Builds with TFS and MSBuild

我在相关问题上发布了Stackoverflow answer here,我在DnrTV上提到了这个精彩的剧集Sayed Hashimi on MS Build