Je gere un projet dont l'objectif est de mettre en place un portail web. Comme on est plusieurs dessus et à des endroits differents (US,France), le CVS s'est avere fort pratique.
On distingue plusieurs serveur web:
- Production: Il ne se met a jour depuis le serveur CVS uniquement en manuel, sur la branche principale.
- Test: Il se synchronise regulierement sur une branche appelee test. Quand la version en test est approuvée, je met a jour la branche principale par rapport aux modifications appliquees sur test (merge) et je synchronise la version en production.
- Dev: Synchronisé toutes les 5 minutes sur une branche appelée devel. C'est ici que vont tous les commits des développeurs. Pareil, quand on a un truc pas trop mal, on applique les modifications apportées sur devel vers test.
De plus chaque developpeur a sa copie chez lui et fait tourner un serveur local. Il fait son developement dans son coin, commit sur dev. Apres quand c'est pas mal on merge sur test et ainsi de suite.
Ca permet d'avoir d'orienter les divers intervenants vers différents sites:
- Le public sur le site en production
- Les commanditaires sur le site de test
- Les dévelopeurs sur le site de dévelopement.
On n'utilise par contre pas CVS pour les Bases de données pour les raisons suivantes:
- Les données dans les sites de dévelopements, de tests et en production doivent être compartimentées. On risquerai de se retrouver avec un message du type "machin est un con" sur le site de production.
- Si des modifications structurelles sont apportées à la base, il faut plutôt prévoir un script pour la migration des données de l'ancienne formule vers la nouvelle.
[^] # Re: Ask DLFP :
Posté par Delahaye Matthieu . En réponse à la dépêche Ask DLFP : "Outil pour développer du PHP en groupe". Évalué à 6.
On distingue plusieurs serveur web:
- Production: Il ne se met a jour depuis le serveur CVS uniquement en manuel, sur la branche principale.
- Test: Il se synchronise regulierement sur une branche appelee test. Quand la version en test est approuvée, je met a jour la branche principale par rapport aux modifications appliquees sur test (merge) et je synchronise la version en production.
- Dev: Synchronisé toutes les 5 minutes sur une branche appelée devel. C'est ici que vont tous les commits des développeurs. Pareil, quand on a un truc pas trop mal, on applique les modifications apportées sur devel vers test.
De plus chaque developpeur a sa copie chez lui et fait tourner un serveur local. Il fait son developement dans son coin, commit sur dev. Apres quand c'est pas mal on merge sur test et ainsi de suite.
Ca permet d'avoir d'orienter les divers intervenants vers différents sites:
- Le public sur le site en production
- Les commanditaires sur le site de test
- Les dévelopeurs sur le site de dévelopement.
On n'utilise par contre pas CVS pour les Bases de données pour les raisons suivantes:
- Les données dans les sites de dévelopements, de tests et en production doivent être compartimentées. On risquerai de se retrouver avec un message du type "machin est un con" sur le site de production.
- Si des modifications structurelles sont apportées à la base, il faut plutôt prévoir un script pour la migration des données de l'ancienne formule vers la nouvelle.