L'organisation pour laquelle je travaille actuellement utilise SVN pour développer des applications PHP. Notre cycle de développement a démarré de manière simple, faire un commit met à jour la racine web en utilisant le hook post-commit afin de voir les changements tout de suite. Nous avons rencontré un problème avec les fonctionnalités de développement empêchant les corrections de bogues et empêchant les fichiers fixes d'être déplacés en production et provoquant parfois des problèmes sur le serveur prod. J'ai donc introduit un schéma de «branchement de version» qui signifie que toutes les versions complètes sont copiées dans leur propre branche, donc toutes les modifications apportées à la production devaient se produire dans cette branche et un développement «à long terme» se produisait sur le tronc. L'idée de départ était de ne faire que des correctifs et de rendre le développeur responsable du transfert de ses propres mises à jour sur le tronc, mais après cinq instances de développeurs fusionnant aveuglément des changements entraînant une perte de données et un développement constant d'éléments à diffusion immédiate. branche de publication cette méthodologie a été abandonnée. Sachez que je suis confronté à une branche qui n'est pas synchronisée (puisque certaines personnes n'ont pas "compris" le concept de tronc/branche et se développent sur le tronc) avec les changements fusionnés dans le tronc à partir d'une branche privée créant le potentiel de plus de code perdu lors de la fusion de tous les changements du mois passé à partir de la branche de publication actuelle.Numéro du cycle de développement Web SVN
J'ai la chance de recommencer et de mettre en application un cycle de développement/publication correct du développement web. SVN semble être orienté vers le développement "release" (applications binaires), où dans ce cas nous pouvons passer une année complète sans déplacer le paquet complet vers la production. Dans ce contexte, voici ma question: Quel cycle de développement Web SVN et/ou schéma recommanderiez-vous pour cette situation? Est-ce que cela nécessite une révision complète de la méthodologie ou est-ce que je manque quelque chose de simple?
Merci pour vos idées!
> leurs modifications doivent être validées à la fois sur la balise Release et sur la jonction. Valider sur un tag? Personnellement, je pense qu'il vaudrait mieux ne commettre les correctifs que sur le tronc et l'étiqueter à nouveau quand tout est corrigé.Habituellement, les balises sont des "instantanés en lecture seule" de l'état de la base de code à un certain moment, et ne doivent pas être modifiées. –
Le problème que vous rencontrez là-bas est que si un autre développeur fusionne son projet dans le tronc après que la balise a été coupée, puis que vous le ré-étiqueterez, son projet est maintenant dans la version. –
Cela atténue les problèmes liés aux conflits entre les "éléments à diffusion immédiate" et les "fonctionnalités de développement" décrits par le PO –