Как автоматически определить следующую версию semver на основе истории коммитов? (CLI альтернатива коммит-анализатору)

У нас есть собственный сценарий с несколькими хитрыми шагами, который принимает номер версии в качестве аргумента, примерно так:

./custom-release-script.js 1.2.3

Я хотел бы автоматизировать процесс выпуска и запустить этот скрипт из CI. Для этого мне нужен инструмент, который будет анализировать историю коммитов и на основе сообщений коммитов выводить следующую версию semver:

$ yarn what-is-the-next-release-version
1.2.3

Есть semantic-release / commit-analyzer, но он работает только как плагин для semantic-release, и мне нужно отдельное решение.


person Limon Monte    schedule 06.09.2018    source источник
comment
Это неправильное место, чтобы задавать подобные вопросы. Найдите популярный форум на любой платформе CI, на которой вы интегрируетесь, и спросите их.   -  person jwdonahue    schedule 06.09.2018


Ответы (1)


Я рекомендую использовать стандартную версию (https://github.com/conventional-changelog/standard-version), модуль, заменяющий команду npm version.

Если вы будете следовать их соглашению о структурированных сообщениях о фиксации, он автоматически обнаружит следующую версию вашего проекта.

Его очень легко использовать, и он:

  • Поднимите версию на свой package.json
  • Обновите Changelog.md новыми коммитами
  • Создайте тег с новой версией

Я надеюсь, что это помогает.

person Sergi Broto    schedule 07.09.2018
comment
Удивительно, не знал об этом модуле и работает как шарм! Спасибо! - person Eric Borland; 29.01.2019