Итак, вопрос, собственно, в чем - как правильно нумеровать версии моей поделки?
Наткнулся на пару статей по этому поводу, одна из них статья на хабре. Примерно похожее описание видел и на других сайтах, в следствие чего сделал вывод, что оно верно. Теперь, собственно, вопрос. Но для начала приведу краткую выдуржку для Ъ из той статьи:
Формат номера версии
Формат номера версии A.B.C.D[r], где:
- A – главный номер версии (major version number).
- B – вспомогательный номер версии (minor version number).
- C – номер сборки, номер логической итерации по работе над функционалом версии A.B (build number).
- D – Номер ревизии, сквозной номер назначаемый автоматически программным обеспечением хранения версий (SVN). Номер ревизии SVN должен синхронизироваться с номером ревизии в AssemblyInfo при каждой сборке релиза (revision number).
- [r] – условное обозначение релиза.
2.1. A.B
Совокупность главного и вспомогательного номеров версии (A.B) дают информацию о функционале приложения. Главный номер версии увеличивается только при очень серьёзном изменении функционала. Пользователи, купившие продукт и оплатившие техническую поддержку получают новые версии только в рамках постоянного главного номера версии, соответственно при выпуске новой главной версии пользователи не смогут получить её в рамках технической поддержки и будут вынуждены оплачивать её покупку заново.
2.2. C
Номер билда (С) должен увеличиваться (зачастую) руководителем проекта по разработке всякий раз, когда продукт передаётся на тестирование.
2.3. D
Номер ревизии (D) увеличивается системой контроля версий (SVN) автоматически при работе с ней. Задача руководите проекта по разработке синхронизировать номер ревизии, генерируемый SVN, с номером указанным в AssemblyInfo в модулях проекта. Выполнять эту операцию нужно одновременно с увеличением номера билда (С).
Итак, у меня есть моя поделка, а именно GrabVK. Первые ее версии именовались как 0.0.1, 0.0.2, 0.0.3 и т.д., что было бы вполне себе логично. Но теперь поделка перепиливается с нуля, полностью переписывается код и меняется функционал. Появилась первая более менее рабочая версия, которую нужно тестить, чем занимаются знакомые и просто народ с лоркода. Если следовать логике, описанной в статье, то версия должна быть 1.0.1 (ибо полностью все изменено (мажорная версия), первичный функционал только и первая сборка). Все последующие билды должны быть 1.0.2, 1.0.3 и т.д. Когда будет сделана следующая версия, содержащая в себе значительные изменения функционала (добавлен новый), то меняться должна средяя цифра, т.е. 1.1.1, 1.1.2, 1.1.3 и т.д. Я прав? Если нет - поясните как это по феншую, и в чем я не прав. Заранее спасибо.