Appveyor 似乎忽略了信息版本

Appveyor seems to ignore infomational version

我试图让我的 NuGet 包由 AssemblyInformationalVersion 进行版本控制,同时保持 AssemblyVersion 不变。我在我的 .nuspec.

中使用了标签 $version$

但是,如果我使用 appveyor 构建 NuGet,它会继续使用 AssemblyVersion。

我的appveyor.yaml:

version: 1.0.{build}
pull_requests:
  do_not_increment_build_number: true
configuration: Release
assembly_info:
   patch: true
   file: '**\AssemblyInfo.*'
   assembly_file_version: '{version}'
   assembly_informational_version: '{version}'
before_build:
   nuget restore
build:
   publish_nuget: true
   parallel: true
   verbosity: minimal
deploy:
   provider: NuGet
   api_key: <SKIPPED>

我的.nuspec摘录

<metadata>
 ....
    <version>$version$</version>
 ....
</metadata>

更新: 我检查了信息版本是否正确设置为文件:

此外,我不知道它是否相关,但它似乎忽略了我的 <files> 指令并将所有内容都放入 lib 而不是 analyzers\dotnet\cs

如果 AssemblyInfo.* 文件不包含 AssemblyInformational 标签,这种情况经常发生。在这种情况下,AppVeyor 无需修补。