février
2009
Cela fait longtemps que j’essaye de trouver un système agréable pour travailler avec Subversion sur des projets web. Le grand problème est généralement qu’il nous faut une base de données centralisée pour que toute l’équipe puisse travailler sur les mêmes données. De plus lorsqu’on a un serveur de pré-production il faut un mécanisme qui maintient constamment une version à jour sur ce serveur.
Le problème de la base de données est assez vite réglé en utilisant une base de données distante qui est partagée et utilisée par chaque développeur. Chaque poste client possède son propre serveur web ce qui permet au développeur de tester certains modules spécifiques à sa partie de développement. Avoir un serveur web sur son poste est également très utile pour faire du déboggage ou du profiling. Au début j’avais de gros problèmes de performances avec la base de données distante que j’ai finalement pu corriger (cf. Topic sur le forum).
Quant au problème lié à Subversion, il fallait que lorsqu’un développeur commit un fichier, la modification soit également faites sur le serveur de pré-production. Comme on part du principe que lorsqu’on fait un commit le fichier en question est fonctionnel il est intéressant de voir si c’est également le cas sur le serveur de pré-production. Pour celà j’ai simplement fais un checkout du projet dans le répértoire « www/mon_projet » de mon serveur web de pré-production et ensuite j’ai créer un script de post-commit qui force le projet sur le serveur de pré-production à faire un update.
Voici le script en question :
/usr/bin/svn update /home/www/mon_projet
De cette manière, à chaque fois qu’un développeur de l’équipe commit un nouveau fichier, il est directement mis-à-jour sur le serveur de pré-production.
On a donc, via ce système, un environement de développement complet avec des serveurs de développement (les clients), un serveur de pré-production et le serveur de production final.
Je suis assez satisfait de cette configuration mais pas encore réellement convaincu que c’est la meilleure façon de travailler sur un projet web en équipe avec Subversion. J’attend donc vos retour d’expérience dans le domaine.
Bonjour cousin,
je voulais juste te dire bravo pour ce que tu fais et bonne continuation.
Note: COUSIN car moi aussi suis un sahli (Ryadh SAHLI)