GitVersionTask 是否可以配置为仅更新指定的 Assembly*Versions 而不是其他版本

Can GitVersionTask be configured to only update specified Assembly*Versions and not others

查看 GitVersion 的文档,似乎有选项只允许 GitVersion 设置特定版本,同时允许其他版本处于手动控制之下。例如,我想更新 AssemblyFileVersion 而不是 AssemblyVersion。我尝试将以下内容添加到我的 csproj 文件

<PropertyGroup>
    <UpdateAssemblyInfo>true</UpdateAssemblyInfo>
    <GenerateAssemblyFileVersionAttribute>true</GenerateAssemblyFileVersionAttribute>
    <GenerateAssemblyInformationalVersionAttribute>false</GenerateAssemblyInformationalVersionAttribute>
    <GenerateAssemblyVersionAttribute>false</GenerateAssemblyVersionAttribute>
  </PropertyGroup>

并更新了我的 AssemblyInfo.cs 文件

[assembly: AssemblyVersion("1.0.0.0")]
//[assembly: AssemblyFileVersion("1.0.0.0")]

但我最终还是将两个版本都设置为 1.0.0.0。

是否可以使用 GitVersionTask 进行此类配置?我找不到显示此类设置的任何好的示例或清晰的文档。

GitVersion 允许使用 GitVersion.yml 配置文件进行更多自定义配置。要创建 GitVersion 配置文件,请在命令提示符下,在 project/solution 目录中执行 GitVersion init。这将打开一个菜单,其中包含 Run getting started wizard 等选项。 运行 向导并按照提示进行操作。一个完全默认的文件如下所示:

branches: {}
ignore:
  sha: []

此文件使用逻辑 "if it's not set, use the default"。

要忽略 AssemblyVersion,请将 assembly-versioning-scheme: None 添加到文件的开头,当 GitVersion 运行时,它将忽略 AssemblyVersion 并更新其他所有内容。同样,如果您想忽略 AssemblyFileVersion,您也可以将 assembly-file-versioning-scheme: None 添加到文件的开头。

有关 GitVersion.yml 的更多信息,请访问 http://gitversion.readthedocs.io/en/latest/configuration/