gitversion: первый найденный тег пропущен

У нас есть следующие настройки филиала:

  • мастер и релиз /1.0 ветки.
  • мастер, помеченный 1.0 и производящий версии 1.0.1, 1.0.2.
  • ветка release/1.0 создана из master, а master затем помечена как 2.0.

Предполагается, что обе ветви производят "стабильные" версии, поэтому нет предварительных меток.

При запуске GitVersion в этих ветвях ветвь выпуска создает версию 1.0.3, а основная ветвь - версию 2.0.1. Пока все хорошо, это то, что мы ожидали.

Теперь один из наших коллег создал новую ветвь функций из ветки релиза, в которую они впоследствии объединяют master. Затем ветвь функций была объединена с веткой релиза с помощью запроса на извлечение. После завершения запроса на получение, GitVersion теперь предоставляет 2.0.X в ветке релиза, а не 1.0.X.

Чтобы попытаться исправить проблему, мы отметили ветку релиза 1.0.4. Однако с каждым новым коммитом в ветке релиза проблема возвращается. Это заставляет использовать вручную помечать каждый коммит в ветке релиза, чтобы дать нам желаемый номер версии.

Мы используем GitVersion 4.0.0-beta0014 в основном режиме.

Конфиг выглядит так:

mode: mainline
assembly-versioning-scheme: MajorMinorPatch
continuous-delivery-fallback-tag: ''
commit-message-incrementing: Disabled
branches:
  master:
    tag: ''
  feature:
    regex: features?[/-]
    tag: unstable.{BranchName}
  release:
    tag: ''
    is-mainline: true
  bugfix:
    regex: bugfix[/-]
    tag: unstable.{BranchName}
ignore:
  sha: []

Кто-нибудь есть идеи, как выйти из этого?

Любош

1 ответ

Я думаю, что вы ищете "опцию предотвращения увеличения ветви слияния" - здесь есть некоторая документация:

https://gitversion.readthedocs.io/en/latest/configuration/

в основном вы просто устанавливаете значение true в вашем gitversion.yml, как показано ниже:

mode: mainline
assembly-versioning-scheme: MajorMinorPatch
continuous-delivery-fallback-tag: ''
commit-message-incrementing: Disabled
branches:
  master:
    tag: ''
  feature:
    regex: features?[/-]
    tag: unstable.{BranchName}
  release:
    tag: ''
    is-mainline: true
  bugfix:
    regex: bugfix[/-]
    tag: unstable.{BranchName}
ignore:
  sha: []
prevent-increment-of-merged-branch-version: true
Другие вопросы по тегам