微软在 GitHub 上开源 MSBuild 引擎

  • 谢丽

2015 年 3 月 20 日

话题:.NET微软GitHub语言 & 开发架构

近日,微软在GitHub上开源了 Microsoft Build Engine,即 MSBuild,并将其贡献给.NET 基金会。这是一个用于构建应用程序的平台。它为项目文件提供了一个 XML 模式,用于控制构建平台如何处理和构建软件。Visual Studio 使用 MSBuild,但 MSBuild 并不依赖于 Visual Studio。通过在项目或解决方案文件中调用 MSBuild.exe,就可以在未安装 Visual Studio 的环境中编排和构建产品。

MSBuild 包含如下组件:

微软此次开源的 MSBuild 源代码与 Visual Studio 2015 中的 MSBuild 略微有一些不同,但他们声称会逐步消除两者之间的差别。同时,微软表示,他们会很快增加 Linux 和 Mac 支持,从而使开发人员可以在他们喜欢的平台上构建开源.NET 项目,最终使它成为.NET 开发人员在 Linux 和 Mac 平台上的首选构建工具。有一点需要提醒开发人员注意,MSBuild 源代码需要使用Visual Studio 2015及以上版本进行构建。

虽然开源的目的之一是获取来自社区的反馈,但开发人员在提交一项功能或大量贡献代码之前,需要与 MSBuild 团队进行协商,确保将要提交的内容符合该产品的路线图。团队会对所有提交的代码进行严格审查和测试,确保代码的质量、设计、向后兼容性和路线图相符度都达到一个极高的标准。由于当前的重点是保持向后兼容性,所以团队对 pull request 做了限制:

  • 在进行贡献之前需要首先同团队进行协商,否则会被拒绝;
  • 只接受与已核准问题相关的贡献;
  • 不容易合并到主干末端的 pull request 会被拒绝;
  • 提交的内容必须满足功能和性能要求,包括团队尚没有提供开源测试的情况;
  • 提交的内容必须遵循.NET 基金会编码指南

此外,开发人员必须在提交 pull request 之前签署贡献者许可协议(CLA)。


感谢郭蕾对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

.NET微软GitHub语言 & 开发架构