Что использовать в качестве начальной версии?


обычно я начинаю свои проекты с версии 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 это проще для вас.

11 78

11 ответов:

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

Иногда, однако, управление версиями управляется клиентом, особенно если вы выпускаете код для общественности.

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

на Семантическое Версионирование 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 не должен считаться стабильным.

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

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

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

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

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

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

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

для МЕТАФОНТА:

Метафонт имеет систему управления версиями подобно тому, что из Текса, где число асимптотически приближается к е с каждой ревизией.

наконец, не совсем вариант число, но не менее интересно, что первоначальное публичное предложение Google (IPO) было подано в SEC для привлечения $2,718,281,828 (обратите внимание, что e~2,718 281 828).

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

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

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

мои личные предпочтения, чтобы начать с 0.1.0 и идти оттуда.

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

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

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

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

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

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

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

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

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

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

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

например: Корел 8, для 8.0.0, 8.0.1, 8.2.2 и т. д. Corel 9, для 9.0.0...так далее.

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

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

начать с 0.0.0 и двигаться дальше оттуда.

начать с 1.1.1 и двигаться дальше оттуда.