Quel est votre workflow de déploiement d'applications Web préféré avec SVN ?

Nous utilisons actuellement une configuration de déploiement quelque peu compliquée qui implique un serveur SVN distant, 3 branches SVN pour DEV, STAGE et PROD, la promotion du code entre elles via des correctifs, etc. Je me demande ce que vous utilisez pour le déploiement dans un petit situation de l'équipe de développement ?

请先 登录 后评论

5 réponses

Mike Stone

Une simple branche de tronc contient le code le plus récent, puis coupez une branche chaque fois que nous sommes en ligne. Cela semble fonctionner assez efficacement. Vous pouvez facilement accéder à la branche précédente chaque fois que la branche actuelle que vous avez coupée pour le système en direct échoue. De plus, il est facile de corriger les bogues sur la branche qui est actuellement active, et puisque la branche meurt effectivement lorsque vous en coupez une nouvelle, il n'y a qu'une seule branche réelle sur laquelle vous devez travailler (et ensuite fusionner les correctifs de là vers le branche active).

请先 登录 后评论
Andrew Peters

Trois branches ressemblent à du travail supplémentaire.

Les différences d'environnement peuvent être gérées en ayant différentes versions des fichiers pertinents dans le tronc. c'est-à-dire database.yml

请先 登录 后评论
Thomas Vander Stichele

tronc pour le développement et une branche (production) pour les éléments de production.

Sur ma machine locale, j'ai un VirtualHost qui pointe vers la branche tronc, pour tester mes modifications.

Toute validation sur le tronc déclenche un crochet de validation qui effectue une exportation svn et se synchronise avec l'URL de développement du serveur en ligne - donc si le site est stackoverflow.com, ce crochet met automatiquement à jour dev.stackoverflow.com

Ensuite, j'utilise svnmerge pour fusionner les correctifs sélectionnés du tronc à la production dans mes caisses locales. J'ai à nouveau un VirtualHost sur ma machine locale pointant vers la branche de production.

Lorsque je valide les modifications fusionnées dans la branche de production, encore une fois, un crochet d'exportation SVN met à jour l'exportation de production (en direct) et le site est en ligne !

请先 登录 后评论
Polsonby

Nous utilisons la branche de version - cela semble être plus efficace pour nous que la branche de fonctionnalité que nous faisions.

Ne créez pas de branches différentes pour les différents environnements.

请先 登录 后评论
knoopx

Je travaille personnellement en local (développement), en ajoutant/corrigeant des fonctionnalités et quand je pense que c'est prêt, je m'engage sur le tronc (production). Sur le serveur de production, je fais juste une mise à jour svn.

请先 登录 后评论