C# TFS中的Net core产品版本号

C# TFS中的Net core产品版本号,c#,deployment,tfs,.net-core,azure-devops-rest-api,C#,Deployment,Tfs,.net Core,Azure Devops Rest Api,我不是一个部署方面的专家,所以问你们一件我在互联网上找不到的事情 让我们假设我有一个用.NETCore编写的项目,最好是用ASPNETCore。 我也在使用TFS VST 理想情况下,我需要包括一个版本号或版本号,我不知道如何在我的软件版本中更加精确,我可以从“关于我们”页面看到。我认为,理想情况下,它应该是当前代码版本的签入编号。但我想这可能是任何其他伟大的解决方案存在 需要建议。最简单的方法是使用内部版本号作为版本号。有一种全局.NET版本控制策略:AssemblyInformational

我不是一个部署方面的专家,所以问你们一件我在互联网上找不到的事情

让我们假设我有一个用.NETCore编写的项目,最好是用ASPNETCore。 我也在使用TFS VST

理想情况下,我需要包括一个版本号或版本号,我不知道如何在我的软件版本中更加精确,我可以从“关于我们”页面看到。我认为,理想情况下,它应该是当前代码版本的签入编号。但我想这可能是任何其他伟大的解决方案存在


需要建议。

最简单的方法是使用内部版本号作为版本号。有一种全局.NET版本控制策略:AssemblyInformationalVersion。您可以使用此策略向软件添加版本控制。您可以使用一个版本来创建程序集

powershell脚本将在后台执行魔术来替换 AssemblyVersion、AssemblyFileVersion和 基于此产品版本的部件信息文件中的部件信息版本。产品版本将作为一个整体传递给 AssemblyVersion和AssemblyInformationVersion属性。 AssemblyFileVersion将替换为完整版本号 它将包括主要版本号和次要版本号 产品版本、基于朱利安的日期和增量版本号

对于组件文件版本=2.7.15169.03的含义

2=>取自“主要”产品版本 7=>取自“次要”产品版本 15169=>由构建过程生成:“15”=2015年,“169”=2015年第几天 3=>第三次构建,于2015年第169天运行 想了解更多细节,你可以看看这篇很棒的帖子:还有这个类似的主题

更新

您可以在内部版本号格式中使用$Build.SourceVersion来包含变更集信息,例如

$BuildDefinitionName\$date:yyyyMMdd\$Build.BuildId.$Build.SourceVersion$rev:.r

但是,此$Build.SourceVersion仅在持续集成提交时自动触发生成时有效。因为在运行手动生成时,必须输入源版本字段才能填充。更多详细信息请查看:


您还可以使用PowerShell脚本获取源版本更改集编号,并将其应用于内部版本号或AssemblyInfo。

我理解。它制造了一台机器。但对于我们的目的,最好的解决方案,特别是对于QA,当我们使用最后一个TFS检查编号时。请同意,这是有道理的@alerya您可以在生成编号格式中使用$Build.SourceVersion,如$BuildDefinitionName_$date:yyyyMMdd_$Build.BuildId.$Build.SourceVersion$rev:.r,这将满足您的需要。但是,此$Build.SourceVersion仅在持续集成提交时自动触发生成时有效。因为在运行手动生成时,必须输入源版本字段才能填充。您还可以使用PowerShell脚本获取源版本变更集编号,并将其应用于内部版本号或AssemblyInfoI。我同意您的看法。然而,我需要添加一个变更集信息到构建也!QA肯定需要它,因为开发人员在关闭美国时提供此Id。QA使用它来检查他们在检查时是否使用了正确版本的软件。