А ведь есть еще другие виды версионирования!
ComVer - SemVer но без последней (патч) части. X.Y
CalVer - упомянутый выше, Year.Month (а может и .Day).
RomVer - Romantic Versioning, подвид SemVer, где правила чуть более мягкие, и увеличивать Major когда действительно что-то изменилось.
ZeroVer - 0.x.y. Опять же подвид SemVer, но раз у вас Major всегда 0, то про обратную совместимость нет смысла и говорить. Чесн, я неоч понимаю смысла, зачем хвастаться "а вот проект Х тоже использует ZeroVer".
Serial/Roman - кэпство, мы просто увеличиваем счетчик. Тут можно долго придумывать другие, но смысла мало.
Так что выбрать? Хм...а зависит от вашего проекта. Если вы пишите библиотеку, фреймворк или что-то, что будет потребляться другим кодом (читайте для программиста), то лучше использовать SemVer и давать средствам версионирования полный контекст вещей.
Для конечных продуктов, которые пойдут в руки пользователю - можно взять ComVer/RomVer/CalVer в зависимости от вашего маркетинга и стиля.
Спасибо @itgram_channel и его DepHell со списком https://dephell.readthedocs.io/cmd-project-bump.html
полезная инфа, спасибо
Обсуждают сегодня