gpt4 book ai didi

tfs - 如何在 TFS2010 的 MSBuild 参数中进行变量替换?

转载 作者:行者123 更新时间:2023-12-01 22:56:55 25 4
gpt4 key购买 nike

我正在尝试在 VS/TFS2010 中配置 Team Build。我希望 MSBuild 参数包含以下内容:

/p:Changeset=BuildDetail.SourceGetVersion

我希望 MSBuild 展开“BuildDetail.SourceGetVersion”。我知道如何通过编辑 xaml 来做到这一点,但我希望有一种方法可以让它在不需要它的情况下工作。有什么想法吗?

最佳答案

需要执行TFS任务

<UsingTask
TaskName="Microsoft.TeamFoundation.Build.Tasks.GetBuildProperties"
AssemblyFile="C:\Program Files\Microsoft Team Foundation Server 2010
\Tools\Microsoft.TeamFoundation.Build.ProcessComponents.dll"
/>

<Target Name="MyTarget">
<GetBuildProperties
TeamFoundationServerUrl="$(TeamFoundationServerUrl)"
BuildUri="$(BuildUri)">
<Output TaskParameter="BuildNumber" PropertyName="BuildNumber" />
<Output TaskParameter="SourceGetVersion" PropertyName="SourceGetVersion" />
</GetBuildProperties>
</Target>

我会使用属性来计算程序集的路径,因为它可能会有所不同,并且因为在开发人员机器上它将位于 Visual Studio 安装下(我认为在 PrivateAssemblies 中)。

由于该属性动态地来自目标执行,因此您基于该属性所做的任何事情也必须动态计算。基于 $(SourceGetVersion) 形成全局静态属性将不起作用。当然,您可以对其进行计算,然后使用 MSBuild 任务运行真正的构建,但这会变得乏味,因为您需要传递其他属性。如果您想要更好的东西,您将在我所做的地方结束,重写 Xaml 以将其传递到 MSBuild 操作中。

关于tfs - 如何在 TFS2010 的 MSBuild 参数中进行变量替换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8915310/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com