Что использовать в качестве начальной версии? - PullRequest
99 голосов
/ 16 сентября 2010

Я обычно начинаю свои проекты с версии 1.0.0.Как только у меня есть кое-что вместе, я выпускаю его как 1.0.0 и перехожу на 1.1.0.

Однако, это приводит к пригодной для использования, но не совсем полной версии 1.0.0 большинства написанных мной материалов,Затем я добавляю функции и получаю достойную версию где-то около 1.6.0.Многие проекты начинаются с версии 0.1.0, которая будет так же полезна, как и моя 1.0.0.

Что бы вы предложили сделать?Начните с 1.0.0 или 0.1.0?

Последний номер только для релизов с исправлениями ошибок.Вы можете думать, что мои 1.0.0 как 1.0 и 0.1.0 как 0.1 - это проще для вас.

Ответы [ 12 ]

170 голосов
/ 11 июня 2014

Стандарт Semantic Versioning 2.0.0 гласит:

Самое простое, что нужно сделать, - это начать первоначальную версию разработки с 0.1.0, а затем увеличивать вспомогательную версию для каждого последующего выпуска.

Можно перейти с 0.3.0 прямо на 1.0.0. Также вполне нормально быть на уровне 0,23,0. Начиная с версии 0.4.0, это несколько нецелесообразно, так как предполагает, что ранее были опубликованы версии.

Кроме того, обратите внимание, что 0.y.z оставлен в стороне для быстрой итерации, поэтому первоначальная разработка (и, следовательно, множество критических изменений) не оставляет вас в глупости, подобной 142.6.0. Вместо того, чтобы поднимать основную версию, увеличивайте минорную версию при каждом критическом изменении, пока не выйдете 1.0.0:

Основная нулевая версия (0.y.z) предназначена для начальной разработки. Все может измениться в любое время. Публичный API не должен считаться стабильным.

3 голосов
/ 16 сентября 2010

Номер версии полностью зависит от вас.Делайте то, что имеет смысл для вас и будьте последовательны.Никто не говорит, что вы должны начинать с 0, или 0,0, или 1,0, или 1,1.

Великие программисты фактически использовали систему нумерации версий в качестве локальных шуток.Примеры (Википедия):

Начиная с версии 3, TeX использует уникальную систему нумерации версий, где обновления указываются путем добавления дополнительной цифры в конце десятичного числа, так что номер версии асимптотическиприближается к π.Это является отражением того факта, что TeX теперь очень стабилен, и ожидаются лишь незначительные обновления.Текущая версия TeX - 3.1415926;в последний раз оно обновлялось в марте 2008 года

Для METAFONT:

В Metafont существует система управления версиями, аналогичная TeX, где число асимптотически приближается к e с каждой ревизией.

Наконец, не совсем номер версии, но в равной степени интересен тот факт, что первичное публичное размещение акций Google (IPO) было подано в SEC для сбора 2 718 281 828 долларов (обратите внимание, что ~ 2,718 281 828).

Суть в том, что вам не нужно следовать за толпой.Будьте креативны и последовательны.

2 голосов
/ 16 сентября 2010

Я думаю, что здесь играют роль разные факторы. Необходимо учитывать психологическое / маркетинговое влияние номера версии (номер версии часто увеличивается => больше $$$, люди не хотят покупать бета-версию 0.99 и т. Д.). «Логические» номера версий могут помочь при работе в огромной команде.

И мне нравится в linux нечетные числа для нестабильных версий и четные числа для стабильных.

1 голос
/ 16 сентября 2010

Когда я получаю свою первую готовую к использованию готовую, но не полную версию, я обычно пытаюсь определить, насколько далеко она подходит к полной версии, поэтому, например, если моя первая пригодная для использования версия на 33% полна, я делаю номер версии 0.3 .0 или аналогичный. Затем, когда я перейду к полной функции, соответствующие версии получат заданные числа аналогичным образом.

Но как только вы перейдете к предыдущей функции, полная версия должна измениться

0 голосов
/ 17 января 2019

0.1.0 - это то, с чего я начинаю и оттуда иду вверх.Это то, что я адаптировал для Xploration Адриана, хотя в ранние годы я был очень спорадическим и использовал 1.0.0, 0.0.1 и некоторые другие.Но я рекомендую начинать с 0.1.0 и дальше.

Per Semver, зарезервируйте a и c в abc для A. У вас первый официальный релиз и C. Исправления ошибок и патчи.Это потому, что основная версия обычно ломает старый код.А патчи просто исправляют ошибки.Это все личные предпочтения, 0.99.0 не означает, что вам нужно переходить на 1.0.0 и т. Д. Я видел некоторые, которые идут до 0.218.42.

0 голосов
/ 05 марта 2017

При выборе номеров версий для пакета npm имейте в виду, что для зависимостей, перечисленных в package.json диапазоны semver не будут работать ниже v1.0.0. То есть

"dependencies": {
    "my-package": "^0.5"
}

эквивалентно

"dependencies": {
    "my-package": "0.5"
}

Если вы хотите иметь возможность использовать диапазоны семивера или разрешить другим людям использовать их, вы можете начать с 1.0.0

0 голосов
/ 16 сентября 2010

Номера версий должны иметь для вас значение, как Arrieta , правильно прокомментированные ранее.

Может быть, что-то вроде: First # - выпуск мэра, Second # - это тот же релиз мэра с некоторыми функциямидобавлен и Третий # - это та же версия мэра, с теми же функциями, но с исправленными ошибками или небольшими (но достаточно существенными) изменениями.

1.3.2 => 1-й выпуск, с большим количеством функций и исправлением некоторых ошибок.

Однако для конечных пользователей некоторые из них используются для больших номеров в финальных выпусках.

Например: Corel 8, для 8.0.0, 8.0.1, 8.2.2 и т. Д. Corel9, для 9.0.0 ... и т. Д.

И в основном это больше касается маркетинговых стратегий, таких как: Corel X5 вместо Corel 15.0.2, например.

Я бы сказал, что это зависит от того,номер версии для вас или для клиента.

0 голосов
/ 16 сентября 2010

Зависит от проекта.Для простых инструментов командной строки я обычно начинаю с 0,9 [.0], так как я рассматриваю возможность их выпуска или упаковки только тогда, когда они близки к завершению (или, во всяком случае, готовы к бета-тестированию.)некоторые даже не видят 1.0.Я считаю 1.0 релизной версией (или, по крайней мере, локально протестированной бета-версией или кандидатом на релиз) и планирую соответственно.

В командных проектах тот, кто ставит первый тег версии, принимает решение:).

0 голосов
/ 16 сентября 2010

Как правило, управление версиями имеет некоторое значение для программиста. Увеличение основного числа может указывать на большие изменения, которые препятствуют обратной совместимости. Другие числа в номере версии могут указывать на более мелкие улучшения или исправления ошибок.

Если вы обеспокоены тем, что версия 0.6.5 содержит неполное кольцо, вы можете продать его под версией 1.0. Ваш маркетинговый номер версии не обязательно должен совпадать с вашим внутренним номером версии. Например, номер версии Windows 7 - 6.1.

Мое личное предпочтение - начинать с 0.1.0 и идти оттуда.

0 голосов
/ 16 сентября 2010

Моя версия управляется настройкой. Я хочу, чтобы он заменял более старые версии, поэтому я продолжаю увеличивать его скачками, которые имеют для меня смысл.

Однако иногда управление версиями осуществляется заказчиком, особенно если вы публикуете код для широкой публики.

Если это ваш звонок, делайте все, что лучше для вас. У меня были некоторые проблемы с версиями до 1.0, поэтому я начну с этого.

...