【问题标题】:TFS Build - Get Assembly Version InfoTFS 构建 - 获取程序集版本信息
【发布时间】:2015-08-30 03:00:30
【问题描述】:

有没有一种简单的方法可以在构建期间将 TFS 内部版本号设置为程序集版本?

我见过很多相反的例子(即内部版本号更新程序集版本)。

我们已经使用来自here 的 SharedAssemblyInfo 实现,因此我们希望在构建过程中利用此设置。

当前使用带有发布管理模板 (ReleaseDefaultTemplate.11.1.xaml) 的 TFS 2012。

【问题讨论】:

    标签: visual-studio tfs build msbuild


    【解决方案1】:

    不修改构建过程模板?不,即使那样,内部版本号也是在编译之前设置的(或者,IIRC,甚至从源代码控制同步代码),所以你在疯狂地尝试获得你想要的行为。

    【讨论】:

    • 我已经修改了构建过程模板以允许预构建/构建后脚本运行 (colinsalmcorner.com/post/build-script-hooks-for-tfs-2012-builds)。在预构建期间通过 Powershell 脚本获取程序集版本是不可能的吗?
    • 您必须解析 AssemblyInfo.cs。如果您正在执行一些预构建,那么它是在您拥有程序集之前。如果没有程序集,则无法获取程序集的元数据。
    • 我真正需要做的是让 AssemblyInfo 匹配 TFS 中的 Release/Sprint。因此,对于 Release 1 Sprint 5,MyProgram.dll 将是 1.5.(rev)。因此,如果可以反过来(从构建模板更新 AssemblyInfo),请接受建议。谢谢
    • 由于您尚未获取文件,因此无法在此过程中足够早地获取程序集版本。内部版本号由控制器设置,而不是代理。然而,这将在 TFS 2015 中成为可能。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-21
    • 2016-02-10
    • 2016-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-22
    相关资源
    最近更新 更多