【问题标题】:Build only ChangeSet using MSBuild in Visual Studio Online在 Visual Studio Online 中使用 MSBuild 仅构建 ChangeSet
【发布时间】:2015-12-16 09:13:06
【问题描述】:

我已设置构建定义以在 Visual Studio Online (VSO) 上构建解决方案。它工作正常,但每次我签入代码时它都会构建所有代码。

如何从代码构建特定的变更集?

我如何使用/传递这个数字到“MSBuild Arguments”以便在那里使用它进行部署?

【问题讨论】:

  • 您使用的是哪个构建系统? v-Next 还是 XAML?

标签: msbuild tfsbuild azure-devops changeset


【解决方案1】:

如果您不希望每次签入时都构建所有代码,则需要关闭 CI 构建功能(取消选中构建定义中“触发器”选项卡下的“持续集成 (CI)”选项) .

要构建特定的变更集,您可以在排队新构建时在“源版本”文本框中输入变更集编号。 (在 Git 中是“提交”文本框)

要将版本号传递给 MSBuild Arguments,您可以使用预定义变量“$(Build.SourceVersion)”,它会填充您在构建队列时指定的源版本号。

【讨论】:

  • 谢谢,但我想自动化这个过程,因为我不想在每次排队构建时都传递变更集值。请给我建议。
  • @ManojSharma 你能补充更多关于这个的细节吗?比如你什么时候想要触发构建以及如何确定要构建哪个变更集?
  • 在每次代码签入时,我都想触发构建,但它只会构建变更集 ID。现在发生了什么,所有代码都在每次签入时构建。但我只想构建变更集。
  • @ManojSharma 没有办法只构建变更集中的更改。当您排队构建时,整个项目(所有代码)必须一起构建。例如,在变更集中,您可能会更改 1 行代码,但不可能仅构建此更改。构建项目时需要其他未更改的代码。
  • 感谢您的回复。是否可以只部署变更集而不是完整的构建部署?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-12
相关资源
最近更新 更多