Nuget 使用VST发布预发布(alpha)版本

Nuget 使用VST发布预发布(alpha)版本,nuget,azure-devops,Nuget,Azure Devops,我尝试在VST上打包并发布一个包作为预释放 在构建步骤:dotnet(2*预览)包中,我设置了一个自定义构建编号: 自动包版本控制:使用内部版本号 选项: $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r)-alpha 它似乎构建正确: Build#aspcore存储库(sqlserver)_2018.1.29.5-alpha已经发布 排队 但在打包步骤中,它在版本中丢失了-alpha,并且没有作为预释放包发布

我尝试在VST上打包并发布一个包作为预释放

在构建步骤:dotnet(2*预览)包中,我设置了一个自定义构建编号:

自动包版本控制:使用内部版本号

选项:

$(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r)-alpha
它似乎构建正确:

Build#aspcore存储库(sqlserver)_2018.1.29.5-alpha已经发布 排队

但在打包步骤中,它在版本中丢失了-alpha,并且没有作为预释放包发布:

[command]"C:\Program Files\dotnet\dotnet.exe" pack
   d:\a\1\s\SqlServer\Citolab.Repository.SqlServer.csproj --output
   d:\a\1\a /p:PackageVersion=2018.1.29.3 --verbosity Detailed

我应该怎么做才能将包发布为PreRelease版本?

这是使用BuildNumber作为版本源的错误/功能,但它还没有被纳入Nuget任务中。作为一种解决方法,请使用环境变量而不是内部版本号,并将值设置为:
Build\u BUILDNUMBER

谢谢!我想我已经接近了。我现在收到这个错误:“Citolab.Repository.SqlServer_2018.1.29.1-alpha”不是有效的版本字符串。认为SqlServer和2018之间的下划线应该是一个点。你知道我该如何改变吗?使用我的vsts变量任务将所有内容剥离到
版本alpha
。默认情况下,Build number搜索0.0.0.0并捕获该值。其他选项只获取完整值,不执行搜索。我尝试了使用变量任务的方法,但没有得到它。据我所知,您的任务是基于现有变量创建一个新变量。但是dotnetpack似乎只是用下划线连接了两个变量。我的任务可用于使用搜索和替换删除生成定义名称。您可以将其分配给一个新变量,以便将其提供给pack任务。