私はソフトウェアを書いて、それをバージョン0.0.0.0と呼ぶかバージョン0.0.0.1と呼ぶかを決定しようとしています。
論理的に言えば、バージョン0.0.0.0であり、私が使用しているシステムツールでは、このバージョン番号を使用できます。
ただし、何かの最初のバージョンは確かにバージョン1でなければならないので、プロジェクトの設計に関与しているユーザーや他の人がこの混乱を見つけるかどうかはわかりません。
機械指向の環境での最初の数字は「0」かもしれませんが、プロジェクトに関係する人々を実際に混乱させる可能性があるので、最初の(1番目の)数字として「1」に固執することをお勧めします。そうしないと、電話で「3番目のバージョン」について話しているときに遅かれ早かれ問題が続き、「3」は「2」になります。
さらに、単純にすることをお勧めします。「0.0.0.1」ではなく、「0.1」から始めます。その後、「0.2…0.9」まで進み、「0.10」、「0.11」などと続きます。
安定版または最初のリリースを入手したら、それを「1.0」と呼びます。–そのバージョンの最初の更新は、再び「1.1」となります。テストされていない場合は、「ベータ」に「b」を追加し、それでもバグが多い場合は「アルファ」に「a」を追加します。
btw:ある時点で、クライアント(または「他の人々」)はすでに「v0.9」の後に最終バージョンを期待している可能性があります。「v0.9」は行き止まりのようなものであり、 「v0.9.1」またはさらに悪い「v.0.91」を続行するには-「0.10」である必要があります。
通常、0のプリプロダクションバージョンまたはベータ/アルファバージョンで始まるバージョン。パブリック(非ベータ)レベルの開発になると、通常は1から番号が付けられます。
したがって、最初の開発バージョンは通常v0.0.0(ドットは好きなだけ)のようなものになりますが、v0.97.2はまだ製造前の準備ができています。 V1.23.2は初期の製品バージョンであり、v17.87.3ははるかに遅いバージョンです。
ただし、これには多くの例外があり、ハードで高速なバージョン番号付け規則はありませんです。
ご存じのとおり、これはあなたがこの質問に踏み込んでいる地雷です。しかし、それはとても楽しいです、そして私はこの質問に答えるために合理的な試みをします。それでは始めましょうか。
ソフトウェアのバージョン管理は、一意のバージョン名または一意のバージョン番号をコンピューターソフトウェアの一意の状態に割り当てるプロセスです。特定のバージョン番号カテゴリ(メジャー、マイナー)内では、これらの番号は通常、昇順で割り当てられ、ソフトウェアの新しい開発に対応しています。きめ細かいレベルでは、電子情報が実際にコンピュータソフトウェアであるかどうかに関係なく、電子情報の段階的に異なるバージョンを追跡するためにリビジョンコントロールがよく使用されます。 参照:ソフトウェアのバージョン管理
とはいえ、使用する数のグループの数に慣例はありません。 4つのグループ(Microsoftなど)を使用するグループもあれば、3つのグループを使用するグループもあります。覚えておくべき重要なことは、順序が左から右であることです。 1.0.0は0.9.9より大きい。
アルファバージョンに0、ベータバージョンに1、リリース候補に2、最終製品版に3を使用する開発者もいます。
SmartEiffelのようないくつかのまれなケースでは、-1.0から始まる負の数を使用します。 S.u.S.E Linuxディストリビューションは、ダグラスアダムスの 『ヒッチハイカーの銀河へのガイド』で言及されているバージョン42、「生命、宇宙、すべてへの答え」を参照するバージョン4.2から始まりました。現在のSlackwareのバージョンは13.37で、参照リートです。
だからあなたが使うものはどれも正しいものでも間違っているものでもないと言うのは公正です。自分に合ったバージョン管理システムを使用し、バージョン管理システムの読み方を文書化することをお勧めします。
慣例では、メインバージョン番号は0.
で始まる可能性があるようですが、0.0
または0.0.0
バージョンが存在することはないと思います。
先頭の0
は、開発を示唆しています。つまり、「まだリリースされていないバージョン」-メインのリリース番号を示す1.xx
などと比較して。
必ず0.0.0.1
から始める必要があります-発行するすべてのバージョンはすでにバージョンなので、論理的にはソフトウェアの絶対zeroth
バージョンは存在できません。最初のゼロは全体的な開発ステータスを指定するだけですが、各リリースにはSubversionの番号付けのどこかに正の整数があります。
このウィキペディアの記事 を通して読むと参考になります。明確な回答はありませんが、0.0.0
の例は初期バージョンとして表示されていませんが、0.xx
が指定されているbetaまたはpre-release。
編集:
semver はバージョン管理の一般的なガイドラインのようであり、FAQには次のように記載されています(2013-01-29で取得):
0.y.zの初期開発フェーズでのリビジョンにはどのように対処すればよいですか?
最も簡単なことは、最初の開発リリースを0.1.0から開始し、その後のリリースごとにマイナーバージョンを増分することです。
(@iamdtoが以前とまったく同じ抜粋を引用して回答したのを見た)
SemVer はこれを述べています:
0.y.zの初期開発フェーズでのリビジョンにどのように対処する必要がありますか?
最も簡単なことは、最初の開発リリースを0.1.0から開始し、その後のリリースごとにマイナーバージョンを増分することです。
エンドユーザー(アプリをダウンロードするユーザー)にとって、これは理にかなっていると思います。平均的な人々は、日常生活の中で1から数え始めているからです。