Выполняя стратегию псевдо-CD для сред разработки, мы хотим убедиться, что все промежуточные сборки помечены и имеют версии таким образом, чтобы обеспечить отслеживаемость, но также соответствовать semver, чтобы helm и т. д. не кричали на нас, а также я мог спать по ночам зная, что я правильно навесил велосипеды. Я думал о семантике semver и о том, как можно пометить сборки/версии внутри выпуска.
Предполагая, что наш процесс не обеспечивает достаточную надежность для «прогнозируемой» версии (например, я не знаю, будет ли наш следующий выпуск основным, второстепенным или исправлением), как лучше всего применить версии для сборки между выпусками.
например
Учитывая последний выпуск 1.2.3
Учитывая постфикс временной метки для метаданных сборки (например, сборка может называться {версия}-1668519441 )
Учитывая, что я не знаю, будет ли следующий официальный выпуск 2.0.0, 1.3.0 или 1.2.4.
Я:





Разумным смартом будет "модифицированный 1" (потому что "внутренние сборки" - это всего лишь сборки, для которых у нас должен быть "какой-то id", который должен просто разрешать внутренние идентификация его и ничего более):
с чем-то вроде git describe HEAD вы получите 1.2.3--14-g2414721, 1.2.3-21-g975b, 1.2.3-25-g2dc6 и т. д., и любая из этих сборок позже в соответствии с (надеюсь, существующей) Политикой выпуска может стать 1.2.4, 1.3.x или даже 2.x.x (см. Идею обычных коммитов и версионирование релизов на его основе), "просто потому что..."
Ответ 3 смелый и однозначный вариант, но плохой, потому что не отвечает на вопрос и не дает хотя бы посредственного решения проблемы, а плохой, потому что не отвечает на вопрос и не дает хотя бы посредственное решение проблемы