J'ai bifurqué un projet et j'en ai changé beaucoup. Cette fourchette n'est pas seulement un petit changement de fonctionnalité ici et une correction de bogue enfouie là, c'est un changement assez substantiel. Seule la majeure partie du code principal est partagée.
J'ai bifurqué ce projet en v2.5.0. Pendant un certain temps, j'ai commencé à versionner ma fourche à la v3.0. Cependant, je ne sais pas si c'est la bonne façon, principalement parce que lorsque ce projet arrive en v3.0, les choses deviennent confuses. Mais je ne veux pas recommencer à la v1.0 ou à la v0.1 car cela implique la petite enfance, l'instabilité et la non-réflexion d'un projet. Ce n'est pas vrai, car la plupart du code de base est très raffiné et stable.
Je ne sais vraiment pas quoi faire, alors je demande ici: Quelle est la façon standard de gérer ce genre de situation? La plupart des fourches recommencent-elles, augmentent-elles les numéros de version ou font-elles autre chose que je ne connais pas?
la source
Réponses:
La plupart des fourches que j'ai vues recommencer à partir de la version 1.0. Mais je suppose que vous avez également changé le nom de votre fork, donc je ne sais pas pourquoi il y aurait confusion si vous commenciez simplement à partir de la v3.0.
Ce que je ferais, c'est changer le nom du projet, publier la version 1.0 et préciser que le projet est un fork d'un autre projet. Je ne pense pas qu'il y aura de confusion avec cette approche.
Si vous êtes vraiment inquiet au sujet du label "1.0", sortez simplement la version 2.0 peu de temps après 1.0 ...
la source
Ayez votre propre feuille de route et respectez-la, en commençant par le numéro de la version d'origine, mais n'essayez pas de courir avec la version actuelle du produit d'origine.
la source
Vous voudrez peut-être déterminer si (et dans quelle mesure) votre projet sera lié au projet d'origine. Si vous prévoyez de porter de nouvelles fonctionnalités du projet d'origine dans votre, vous pouvez envisager de conserver vos numéros de version correspondant aux versions de l'original.
À titre d'exemple, consultez MariaDB, qui est un fork de MySQL. Ils veulent le garder comme un remplacement «drop-in» pour MySQL, donc par exemple MariaDB 5.2 a toutes les fonctionnalités de MySQL 5.2.
Voir: http://kb.askmonty.org/v/mariadb-versus-mysql
Remarque: Depuis que cette réponse a été publiée, MariaDB a considérablement divergé de MySQL et suit maintenant son propre schéma de version.
la source
0,1 peut indiquer la petite enfance, mais la version 1.0+ signifie stable. Une augmentation des numéros de version majeurs, par exemple 2.0, 3.0, indique généralement un changement important de fonctionnalité.
Par exemple
Ce que je dis, c'est que les numéros de version majeurs n'indiquent pas la maturité, ils indiquent les principaux ensembles de fonctionnalités. Maintenant, c'était un peu une tangente de la façon de numéroter la version de votre produit.
Ce que j'ai vu auparavant, ce que j'aimais bien, c'était de recommencer la version à partir de 1.0 (ou de 3.0 si vous préférez vraiment), puis entre parenthèses indiquant de quelle version de l'original il comportait la dernière fois des fonctionnalités.
la source
Si possible, fusionnez votre fork avec le projet d'origine. Je ne saurais trop insister sur ce point.
Reprenez vos numéros de version, puis utilisez celui à partir duquel vous avez croisé plus un suffixe de date.
la source