代码之家  ›  专栏  ›  技术社区  ›  Esteban Araya

如何将最新的TFS变更集编号插入ASPX页?

  •  8
  • Esteban Araya  · 技术社区  · 14 年前

    当我们使用SVN时,我们总是在页面的底部打印:“修订版XXXX”。我一直在找,但我不知道如何用tfs做同样的事情。有人能提出一些建议吗?

    如果这很重要:我们使用的是ASP.NET MVC。不过,我想这没关系。

    5 回复  |  直到 10 年前
        1
  •  4
  •   dee-see Tom Ritsema    10 年前

    可以使用程序集的默认版本系统跟踪修订号,而不在tfs中添加任何内容。

    如果您使用 Major.Minor.* 格式在您 AssemblyInfo AssemblyVersion 属性(例如 [assembly: AssemblyVersion("1.0.*")] )它将根据以下格式生成一个版本:

    Major.Minor.Build.Revision
    

    哪里

    • 专业=你的价值
    • 次要=你的价值
    • 内部版本=之后的天数 2000/01/01
    • 修订=(从当天午夜起的秒数 在build中指定)/2

    这将为您提供一个不断增加的数字,它将为您提供有关生成日期和时间的精确信息。

    要在代码中使用这些值,只需使用 Assembly.GetExecutingAssembly().GetName().Version .

        2
  •  1
  •   Afshar Mohebi    14 年前

    您可以更新中项目的版本号 AssemblyInfo.cs 使用程序集版本控制工具/技术,如 this . 可以基于TFS变更集编号更新程序集的版本号。然后可以在应用程序中显示版本号。

        3
  •  0
  •   Gobie74    14 年前

    至少当它被发布时,tfs不允许在文件中替换符号,我认为这是您所追求的。我不确定这在最近的版本中是否发生了变化。

        4
  •  0
  •   StingyJack    14 年前

    改变!=版本

    也就是说,您可以在web.config中添加保存版本号的设置,并将其显示在页面上。版本号可以作为构建过程的一部分进行更新,但它不会与变更集相关联。

    我应该补充一下,这可能会成为一个循环问题。如果为项目获取最新的变更集编号,则将其添加到配置(如上所述),然后签入,则不再显示最新的变更集。将1添加到最新的变更集也不能保证,因为在更新文件时可以签入某些内容。

        5
  •  0
  •   Esteban Araya    14 年前

    最后我们使用了一个msbuild任务,该任务搜索特定的字符串并用适当的值(不一定是修订号)替换。

    该任务作为构建模板的一部分运行,并将修订号放在所有具有标记的文件中。