J'ai écrit un logiciel et j'essaie de décider de l'appeler version 0.0.0.0 ou version 0.0.0.1.
Logiquement, c'est la version 0.0.0.0, et l'outil système que j'utilise permet d'utiliser ce numéro de version.
Cependant, je ne sais pas si les utilisateurs ou les autres personnes impliquées dans la conception du projet trouveront cela déroutant, car la première version de quelque chose doit sûrement être la version 1.
Le premier nombre dans un environnement orienté machine peut être "0" mais je suppose que cela serait en fait déroutant pour les personnes impliquées dans le projet - il vaut donc mieux s'en tenir au "1" comme premier (1er) nombre. Sinon, vous aurez tôt ou tard des problèmes persistants lorsque vous parlerez au téléphone de "la troisième version" qui aurait alors le "2".
Et en plus, je peux simplement recommander de rester simple - au lieu d'avoir "0.0.0.1", je commencerais plutôt par "0.1". Continuez ensuite par "0,2… 0,9", puis continuez avec "0,10" et "0,11" et ainsi de suite.
Une fois que vous avez une version stable ou une première version, appelez-la "1.0" - la première mise à jour de cette version est à nouveau "1.1" et ainsi de suite. S'il n'est pas testé, vous pouvez ajouter un "b" pour "beta" et s'il est encore très bogué, ajoutez un "a" pour "alpha".
btw: à un moment donné, il se pourrait que le client (ou "les autres personnes") attende la version finale déjà après "v0.9" - et certains pourraient penser que "v0.9" est quelque chose comme une impasse et veulent pour continuer avec "v0.9.1" ou pire encore "v.0.91" –– mais il devrait être "0.10".
Généralement, les versions commençant par 0 pré-production ou versions beta/alpha. Une fois qu'ils sont dans un niveau de développement public (non bêta), ils commencent généralement à numéroter à partir de 1.
Ainsi, la toute première version de développement ressemblerait généralement à la v0.0.0 (avec autant de points que vous le souhaitez), mais la v0.97.2 serait toujours prête pour la pré-production. La V1.23.2 serait une première version de production et la v17.87.3 serait beaucoup plus tardive.
Il y a cependant de nombreuses exceptions à cela, et pas de règles de numérotation des versions dures et rapides.
Comme vous le comprenez sûrement - c'est un champ de mines que vous abordez avec cette question. Mais c'est très amusant et je ferai un essai raisonnable pour répondre à cette question. Commençons donc au début, d'accord?!
Le contrôle de version du logiciel consiste à attribuer des noms de version uniques ou des numéros de version uniques à des états uniques de logiciel informatique. Dans une catégorie de numéro de version donnée (majeur, mineur), ces numéros sont généralement attribués dans l'ordre croissant et correspondent aux nouveaux développements du logiciel. À un niveau très fin, le contrôle des révisions est souvent utilisé pour garder une trace de versions incrémentielles différentes d'informations électroniques, que ces informations soient ou non en fait des logiciels informatiques. Référence: version des logiciels
Cela dit, il n'y a pas de convention sur le nombre de groupes de numéros à utiliser. Certains utilisent quatre groupes (comme Microsoft), d'autres trois. La chose importante à retenir est que l'ordre est de gauche à droite. 1.0.0 est supérieur à 0.9.9.
Certains développeurs utilisent 0 pour la version alpha, 1 pour la version bêta, 2 pour la version candidate et 3 pour la version finale et la production.
Quelques rares cas comme SmartEiffel utilisent des nombres négatifs à partir de -1,0. La distribution Linux S.u.S.E a commencé à la version 4.2 faisant référence à 42, "la réponse à la vie, à l'univers et à tout" mentionnée dans le Guide de l'auto-stoppeur de la galaxie de Douglas Adams. La version actuelle de Slackware est à 13,37 référençant leet.
Il est donc juste de dire que tout ce que vous utilisez n'est ni bon ni mauvais. Le conseil serait d'utiliser un système de gestion des versions qui fonctionne pour vous et de documenter la façon dont votre système de gestion des versions devrait être lu.
Bien que la convention semble être que les numéros de version principaux peuvent commencer par 0.
Je ne pense pas qu'il y ait jamais un 0.0
ou 0.0.0
version.
Le premier 0
suggère un développement, c'est-à-dire "pas encore une version publiée" - par rapport à 1.xx
et ainsi de suite, qui indiquent le numéro de version principal.
Vous devriez certainement commencer par 0.0.0.1
- toute version que vous publiez est déjà une version , donc logiquement, il ne peut pas y avoir un zeroth
absolu__ version de votre logiciel . Le zéro initial désigne simplement l'état de développement global, mais chaque version a un nombre entier positif quelque part dans la numérotation Subversion.
Lire cet article wikipedia sera utile. Même s'il n'y a pas de réponse définitive, il ne montre certainement aucun exemple de 0.0.0
comme version initiale, mais mentionne 0.xx
comme indiqué beta ou pré-version.
Éditer:
semver semble être une directive populaire pour le contrôle de version, et dans sa FAQ, il indique (récupéré le 29/01/2013):
Comment dois-je gérer les révisions dans la phase de développement initiale 0.y.z?
La chose la plus simple à faire est de démarrer votre version de développement initiale à 0.1.0, puis d'incrémenter la version mineure pour chaque version suivante.
(vient de voir @iamdto a répondu en citant exactement le même extrait plus tôt)
SemVer déclare ceci:
Comment dois-je gérer les révisions dans la phase de développement initiale 0.y.z?
La chose la plus simple à faire est de démarrer votre version de développement initiale à 0.1.0, puis d'incrémenter la version mineure pour chaque version suivante.
Je pense que cela a du sens pour les utilisateurs finaux (ceux qui vont télécharger votre application) parce que les gens moyens sont habitués à commencer à compter à partir de 1 dans leur vie quotidienne.