Question

Nous développons une application avec des composants sur plusieurs niveaux physiques, en partageant de nombreux assemblages et en offrant certains exclusifs à chaque niveau.

Je souhaite connaître la stratégie de gestion de version type utilisée pour les correctifs de version ou pour quelques composants seulement de l'application.

Notre logiciel de suivi des problèmes contient un numéro de version pour l’ensemble du produit. Si la version actuelle est 1.4.5 et qu'un correctif est requis, les problèmes relatifs au correctif doivent être publiés pour la version 1.4.6. Tous les assemblys concernés par les correctifs pour 1.4.6 sont version 1.4.6. Si nous ne distribuons que ces fichiers, nous avons quelques fichiers sur la version 1.4.5 et d’autres sur la 1.4.6.

Une solution pourrait consister à reconstruire et à publier l’application entière au format 1.4.6, mais cela nécessiterait le redéploiement de plusieurs composants sur plusieurs machines, ce qui entraînerait des temps d’indisponibilité inutiles des composants qui n’avaient pas réellement changé.

Quelles stratégies les gens ont-ils mises en place pour résoudre ce problème? Est-ce juste une question d'accepter que certains fichiers auront des numéros de version différents? Dans le passé, j’ai constaté que cela entraînait une confusion avec l’équipe de support des clients (niveau 1).

Était-ce utile?

La solution

Vous posez une question intéressante.

C’est vraiment une décision de politique générale que vous devez prendre pour décider de votre stratégie de déploiement et de gestion des versions et prendre en compte les compromis entre divers facteurs (dont certains ont déjà été mentionnés, tels que la confusion des clients).

Une des choses que vous pouvez faire est de découpler la version et le contrôle de version de vos niveaux individuels, ce qui vous permettrait d’avoir un contrôle de version cohérent au sein d’un niveau avec une surcharge de déploiement de correctifs. Vous aurez également besoin de décomposer les assemblages communs dans un package et une version distincts, qui le seront également.

Cela pourrait être excessif, alors une autre solution serait de rendre votre version plus facile à comprendre. Par exemple, vous pouvez réserver une partie de votre numéro de version pour indiquer les correctifs. Par exemple, si 1.4.5.0 est la version officielle, le correctif serait 1.4.5.1 et cela peut facilement être compris comme faisant partie de la version officielle 1.4.5.

Vous pouvez également utiliser d'autres versions d'assembly, telles que AssemblyInformationalVersion pour stocker les informations de version de vos utilisateurs. (Consultez mon article de blog pour plus de détails sur < code> AssemblyInformationalVersion et versioning d'assembly dans .NET.)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top