Je suis sur le point de commencer à travailler sur une nouvelle version (version 4) de mon application commerciale. J'utilise Subversion.
Sur la base de vos expériences, erreurs et succès, comment recommanderiez-vous que je configure la nouvelle version dans Subversion?
Voici quelques informations: j'ai l'intention de continuer à publier des mises à jour critiques dans la version 3 pendant un certain temps après la sortie de la version 4. Cependant, tout développement de nouvelles fonctionnalités sera uniquement dans la version 4.
Au cas où cela serait pertinent: je suis développeur solo sur ce produit, et cela devrait rester le cas.
EDIT: Je connais les balises et les branches de SVN. Je suppose que j'ai besoin d'une stratégie optimale pour utiliser des balises et des branches dans ma situation.
la source
Ça dépend.
Vous pouvez conserver la version 4 dans le coffre et continuer à développer sur V4. La version 3 serait une branche que vous mettriez à jour au besoin. L'avantage de cette approche est que si un problème critique a été découvert dans V3 qui l'est également dans V4, vous pouvez effectuer une simple fusion sur le ou les fichiers entre les branches.
L'autre option consiste à créer un référentiel entièrement nouveau pour V4. Cela vous donnera un nouveau départ. L'inconvénient est que l'historique des modifications est réinitialisé et vous ne pourrez pas fusionner de fichiers via Subversion. Vous devrez utiliser un programme tel que Beyond Compare pour fusionner les modifications.
Personnellement, je m'en tiendrai à la première approche. Créez une branche V3 et conservez le code et les mises à jour dans cette branche. Le nouveau code V4 peut être développé dans le coffre.
la source
J'ai trouvé un excellent guide pour cette situation :
la source
Ce que vous demandez, c'est la stratégie de branche (et de fusion) à utiliser. Alors prenez le poste de karthik t et prenez cela comme une recette.
Pour quelques informations, lisez les ressources suivantes:
la source