我想创建一个名为NugetVersionNumber的变量,其值的日期格式为$(Date:yyyy.MM.dd)$(Rev:.rr),最后是修订版。
e.g。
2018.8.23.1
如何设置流程变量来构造此格式而不更改build.buildnumber变量?
答案 0 :(得分:0)
无法将$(Date:yyyy.MM.dd)$(Rev:.rr)
直接用作user-defined variables。 (Date:yyyyMMdd)
是构建号格式的token,而不是一般变量。
执行此操作的唯一方法是使用(Date:yyyy.MM.dd)$(Rev:.rr)
格式设置内部版本号。然后直接使用$(Build.BuildNumber)
变量。
因为您将使用它作为Nuget包版本。您可以直接在Nuget Package task中查看使用内部版本号到版本包。
要使用内部版本号,请选中“使用内部版本号到版本包” 框并按照线条的说明(将鼠标悬停在蓝色 i 图标上) 设置构建版本格式字符串。您必须设置构建版本 格式字符串,至少有三个部分由句点分隔 避免NuGet包装中的错误。默认的构建版本格式 字符串是
$(date:yyyyMMdd)$(rev:.r)
,因此一个简单的更改就是添加一个 最后为零,日期和构建计数器之间有一段时间:$(date:yyyyMMdd).$(rev:.r).0
。
答案 1 :(得分:0)
我设法让它发挥作用。我意识到tfs 2017在使用任务“版本.NET核心程序集”时生成一个名为“OutputedVersion”的构建变量,并且正则表达式过滤器从build.buildnumber变量中提取日期。