2017-04-24 67 views
4

我試圖讓我的NuGet包由AssemblyInformationalVersion版本化,同時保持AssemblyVersion相同。我在我的.nuspec中使用tag $ version $。Appveyor似乎忽略infomational版本

但是,如果我使用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> 

UPD: 我檢查版本信息正確設置文件: Informational version

另外,我不知道如果它相關,但它似乎忽略了我的<files>指令並將所有內容都放入lib而不是analyzers\dotnet\cs

回答

1

如果AssemblyInfo.*文件不包含AssemblyInformational標記,通常會發生這種情況。在這種情況下,AppVeyor沒有任何補丁。

+0

感謝您的建議,但它沒有幫助。 信息版本設置正確,但似乎被忽略。 – Leotsarev

+0

請參閱更新 – Leotsarev

+0

分叉您的回購,從您發佈的內容創建appveyor.yml,並且所有工作正常。還添加了'publish_nuget_symbols:true'和'include_nuget_references:true',使它看起來更像你的版本,它仍然可以正常工作:https://ci.appveyor.com/project/IlyaFinkelshteyn/hardcode-analyzer。請再試一次,如果這不起作用,請將當前配置導出到YAML中。 – ilyaf