在 VS2017 中使用 Gitversiontask 功能 gitflow 分支,修订不递增

Using Gitversiontask in VS2017 on feature gitflow branch, revision not incrementing

我对所有 AZURE devops都是新手。

我只在我的 VS 解决方案上进行了最小安装,在我的解决方案中 nuget Gitversiontask,推送到 Azure Git 管道,它与开发分支。

我创建了(GitFLOW)一个名为 dostuff 的 feature。 对 类 进行了一些更改,然后提交并推送... 版本 feature/my-app 6.1.0-dostuff0001 出来了...Nuget 打包并推送...一切正常。

然后又进行了一次提交,管道开始但在 Nuget Push 到工件 ...错误 409(冲突 - 提要已经包含“我的应用程序 6.1.0-dostuff0001”。

pipeline

- task: NuGetCommand@2
  displayName: 'restore WinFormExtC.sln'
  inputs:
    restoreSolution: WinFormExtC/ActiveFramework.WinFormExtC.sln
    feedsToUse: config
    nugetConfigPath: NuGet/NuGet.Config

steps:
- task: VSBuild@1
  displayName: 'Build solution WinFormExtC'
  inputs:
    solution: WinFormExtC/ActiveFramework.WinFormExtC.sln
    platform: '$(BuildPlatform)'
    configuration: '$(BuildConfiguration)'

steps:
- task: NuGetCommand@2
  displayName: 'NuGet pack WinFormExtC'
  inputs:
    command: pack
    packagesToPack: WinFormExtC/Package.nuspec
    versioningScheme: byEnvVar
    versionEnvVar: GitVersion.NuGetVersion
    includeSymbols: true

Your build pipeline references an undefined variable named ‘Parameters.searchPatternPush’. Create or edit the build pipeline for this YAML file, define the variable on the Variables tab. See https://go.microsoft.com/fwlink/?linkid=865972

steps:
- task: NuGetCommand@2
  displayName: 'NuGet push'
  inputs:
    command: push
    packagesToPush: '$(Parameters.searchPatternPush)'
    publishVstsFeed: '505cb4b9-0633-4d83-b4b6-1e5fc7ad020f'

问题:当我在 Azure devops 中排队管道并且构建任务增加功能分支的版本时,如何让 my-app 6.1.0-dostuff0001 增加或更改?

请记住,我对所有这些构建、yml、配置等概念都是新手。

Why is my version not incrementing?

GitVersion calculates the semantic version, this will only change once per release. Read more at version increments

因此,要使其增量,我们可以设置和使用配置文件:GitVersion.yml。下面GitVersion.yml供大家参考,我在master分支触发时有效

mode: Mainline
tag-prefix: '[vV]'
commit-message-incrementing: MergeMessageOnly
branches:
  feature:
    regex: feature?[/-]
    source-branches: ['develop']
  release:
    increment: Minor
    regex: release?[/-]
  develop:
    is-mainline: true
    increment: Patch
    regex: develop$
  master:
    regex: master$ 

更多Git版本相关信息请参考以下博客: