Очень удобно всегда знать какой конкретно версии та или иная сборка проекта. Для этого обычно вводят номер версии, состоящий из нескольких цифр. Я являюсь сторонником структуры состоящей из 4 цифр, вида:
Именование | Смысл |
Major | Изменение этого поля указывает на то, что изменения функционала весьма существенные. Возможно даже была утрачена совместимость по файлам данных и протоколам. |
Minor | Указывает, что версия с большим значением этого поля, обладает большим функционалом. |
Patch | Значение изменяется при выпуске новых версий, которые содержат исправления. |
Build | Удобно для внутреннего использования, чтобы ссылаться на одну и ту же версию кода. |
Все вместе это и формирует полное именование версии (Major.Minor.Pathch.Build):
4.6.12.589
Некоторые используют в качестве build уникальное числовое значение, которое увеличивается каждый раз, например, при ночной сборке. Я считаю, что никакого смысла в этом нет – гораздо удобнее привязать данный номер к ревизии в репозитории. Я использую Subversion и CMake, поэтому продемонстрирую как можно автоматизировать проставлении версии билда с этими инструментами.