(24-02-2009, 01:14 AM)Zamentur a écrit : D'où mon questionnement sur la façon dont vous procédez?
(et puis il faut le dire ma méthode est un peu bourrine et assez risqué surtout si un des développeur vient à utiliser une version de mysql trop différentes!)
Merci pour vos réactions!
J'ai pas tellement compris ta méthode et tes limitations (tu peux pas rajouter ibdata1 dans ton projet?) donc je peux pas te conseiller, mais je peux te dire ce que je fais.
J'utilise pas svn mais git, mais ça revient au même.
J'ai créé un "pre-commit hook" (c'est à dire une action qui est executé automatique avant chaque appel de la fonction commit) qui dump (par mysqldump) la base donnée et ajoute le fichier à mon commit.
De cette façon à chaque fois que je commite, je commite aussi une base de donnée alignée qui fonctionne avec mon code.
C'est un peu lourd mais ça permet de faire fonctionner n'importe quelle révision. Et je réfléchis pas si ma bdd est bien alignée avec mon code, c'est transparent.
Un mini-tuto pour svn:
http://wordaligned.org/articles/a-subver...ommit-hook
A l'inverse je sais pas si un "post-update hook" existe, qui te permettrait de regénérer la base.
Après rien ne t'empêche de créer un petit script perso qui fait:
1. svn update
2. chargement de ton fichier backup.db dans la database.
Pour l'instant j'ai jamais eu à revenir en arrière sur une révision, mais le jour où je devrais le faire, c'est clair que je devrais faire une intervention manuelle pour réaligner la bdd.
(Je viens de vérifier c'est possible de définir un "post-checkout hook" pour git, donc potentiellement je pourrais/devrais rajouter mysql -uUser -pPASSWORD database < backup.sql dedans )