GitVersion (Pre) Release Проблемы с версиями / именами - PullRequest
0 голосов
/ 08 февраля 2020

У нас есть следующая структура ветвления для стабильных версий:

"release / VANNA "

... где VANNA состоит из

  1. Всегда буква 'V'
  2. Одна заглавная буква AZ
  3. Одно число 1-9
  4. Одно число 0-9
  5. Одна заглавная буква AZ

Предварительные версии имеют следующую схему именования ветвей:

"release / VANNA-ITN "

  1. Всегда буква 'V'
  2. Одна заглавная буква AZ
  3. Одна цифра 1-9
  4. Одна цифра 0-9
  5. Одна заглавная буква AZ
  6. Всегда буквы '-IT'
  7. Одно число 1-9

Так что это реальный пример всех ветвей, которые мы имеем может быть:

releases/VA10A-IT1
releases/VA10A-IT2
releases/VA10A-IT3
releases/VA10A
releases/VA20A-IT1
releases/VA20A-IT2
releases/VA20A
releases/VB10A-IT1
releases/VB10A-IT2
releases/VB10A-IT3
releases/VB10A-IT4

Проблема, с которой я сталкиваюсь, заключается в том, что мне трудно изгибать GitVersion 5.x для работы с такой схемой именования, то есть частью gitversion.yml, относящейся к предварительным версиям (все * -ITX) и выпускает Это выглядит примерно так:

  prereleases:
    regex: releases/V\D\d\d\D-IT\d$
    tag: useBranchName
    increment: None
    prevent-increment-of-merged-branch-version: true
    track-merge-target: false
    source-branches:
    - master
  releases:
    regex: releases/V\D\d\d\D$
    tag: ''
    increment: None
    prevent-increment-of-merged-branch-version: true
    track-merge-target: false
    source-branches:
    - master

И GitVersion возвращает это при проверке ветки "Releases / VG10A-IT1":

{
  "Major":9,
  "Minor":0,
  "Patch":0,
  "PreReleaseTag":".1",
  "PreReleaseTagWithDash":"",
  "PreReleaseLabel":"",
  "PreReleaseNumber":"",
  "WeightedPreReleaseNumber":"",
  "BuildMetaData":1492,
  "BuildMetaDataPadded":1492,
  "FullBuildMetaData":"1492.Branch.releases-VG10A-IT1.Sha.df166b1b7d56cb3a8f8f4546a4530248de604987",
  "MajorMinorPatch":"9.0.0",
  "SemVer":"9.0.0",
  "LegacySemVer":"9.0.0",
  "LegacySemVerPadded":"9.0.0",
  "AssemblySemVer":"9.0.0.0",
  "AssemblySemFileVer":"9.0.0.0",
  "FullSemVer":"9.0.0+1492",
  "InformationalVersion":"9.0.0+1492.Branch.releases-VG10A-IT1.Sha.df166b1b7d56cb3a8f8f4546a4530248de604987",
  "BranchName":"releases/VG10A-IT1",
  "Sha":"df166b1b7d56cb3a8f8f4546a4530248de604987",
  "ShortSha":"df166b1",
  "NuGetVersionV2":"9.0.0",
  "NuGetVersion":"9.0.0",
  "NuGetPreReleaseTagV2":"",
  "NuGetPreReleaseTag":"",
  "VersionSourceSha":"94a3b0d8fbfb1f98423b55d50e93a2adb768e636",
  "CommitsSinceVersionSource":1492,
  "CommitsSinceVersionSourcePadded":1492,
  "CommitDate":"2020-02-07"
}

Я бы, однако, ожидал, что PreReleaseTag быть "VG10A-IT1" (или "VG10A.IT1") .. и "NuGetVersionV2": "9.0.0-VG10A-IT1" (или что-то похожее на это), но это не так ... и мне интересно, почему / делает у кого-нибудь есть предложения как правильно его настроить?

...