Jump to content
Sign in to follow this  
Fabrice

[Tuto] How to... update the SVN - comment mettre à jour une SVN

Recommended Posts

[Edit par Damien]
Pour rappel, vous ne suivez ce tuto qu'à vos risques et périls.
Car tuto ou pas, non seulement le SVN n'est pas forcément stable, mais en plus les MAJ de bases de données sont toujours risquée.
En gros, ne le faites que si vous savez ce que vous faites, et débrouillez-vous si ça marche pas (je veux pas en entendre parler :P)
[/Edit]

Edit : je relis et modifie les infos ci-dessous. comme ça, Damien il verra plus le topic en rouge :-)

US version below
Ce tuto est à manier avec précautions.
j'utilise la svn en production.
la question est : comment mettre à jour le site sans tout casser, tout en étant à jour, avec les données ET la structure ?
Vous allez voir, j'ai une solution qui est finalement assez simple. (néophites s'abstenir !)

N'hésitez-pas à faire ces manipulations sur des bases test. Vous pourrez ainsi vérifier que tout est en ordre.
Voici comment j'ai procédé.

Mettre le site en sommeil (BO / préférences / activer boutique xNON) de façon à ne pas avoir une commande qui entre en même temps !

1. Dupliquer votre dossier boutique D1 (nous l'appellerons D2) ainsi que votre base de données (C2).
2. Posez les mises à jour du SVN (modules, php etc) dans D2

reste à mettre à jour la structure de la base de données. (D2) avec la SVN

3. Lancer une nouvelle installation (boutique complète avec une nouvelle base de données - appelée D3)
pas besoin d'y sopier les données. on s'en fout - c'est juste pour récupérer la structure.
4. Une fois la "nouvelle boutique" installée et fonctionnelle, activez tous les modules (cela va créer certaines nouvelles tables dans la base de données D3)

Maintenant nous allons utiliser un outil très sympa : Navicat MySQL - existe pour mac, pc et linux :-) et ne coûte que quelques dizaines d'euros... il est même possible de tester l'appli quelques jours, sans bourse délier. Bien entendu, cette appli vous servira à bien d'autres choses, mais vous le découvrirez par vous-même.
- paramétrer le soft de façon à pouvoir ouvrir les bases (c'est simple à faire - même moi j'y suis arrivé !)
- ensuite, il ne suffit plus qu'à laisser faire navicat : connecter les bases.

5. dans "TOOLS" sélectionner "STRUCTURE SYNCRONIZATION"
synchronisez la STRUCTURE (pas les données) de la D2 avec D3.
le soft vous propose une prévisualisation des modifications à apporter pour être synchrone.
appliquez les modifs. pouvez même vérifier après màj que tout est en ordre. top je vous dis.

voilà. votre base est à jour. tester. déguster. n'oubliez pas de changer vos param config.
rouvrir la boutique avec les nouveaux fichiers et la base à jour.

vous avez toujours la boutique et la base originales au cas où...
Voilà !

rePS : je n'assure pas le support de navicat - essayez avant de me questionner - je n'en connait pas encore assez sur ce soft.

5716_Ej9ijLfcgNDIJu2wlzuy_t

5717_wPviACwsOLgv07xst9LS_t

5718_7sWMQFt75wUtAJ9CGwf9_t

Share this post


Link to post
Share on other sites

US version :
Take care when you manipulate database.
I am using the SVN in prod.
question is : how to update a svn withouth breaking everything ? Having structure and datas updated ?
I found out an easy solution. and wanted to share it with you.

here is how I proceed :

Put your shop offline (BO/prefs/desactivate shop)
1. Duplicate the shop D1 folder (we call it D2) and the database (we call it B2)
2. SVN : copy the modules and other latest stuff etc... with latest SVN version in D2.

And now, here is how I proceed for the sensitiv part : the SQL base.

3. Instal a brand new shop with the latest SVN version. (called B3)
4. once this is done, activate all modules inside this shop (that with activate all possible tables)

now we will use a very nice tool : Navicat MySQL - mac, pc's and linux versions available - it costs only a few $ and you can fully test the application before buying it. you will see that this great tool can be used for many other processes...

5. in "TOOLS" select "STRUCTURE SYNCRONIZATION"
syncronize B3 STRUCTURE ONLY with B2 (refer to screen copies in the previous french post)
Soft will propose you a preview, accept by running the queries (no risk, you're working on a copy)

if everything is ok, you should now have a clean database with the updated structure. with all elements inside.

you then have to rename your forlder to the original name.
do not forget to reactivate the shop. and to change the config prefs.

you still have your database 1, in case of...

And... voilà !

PS :
I use navicat for small updates (adding tables etc... automaticaly, but last SVN version was really "heavy" - so I decided to try a full update - and finally, it works perfectly.)

I do not know a lot about navicat - If I can help I will do it. but please, try by yourself before asking.
and... sorry for my english - hope you will understand these sentences.

Share this post


Link to post
Share on other sites

si j'ai oublié quelque chose (il est tard... pas sur que tout y est) je reviendrais le poser ici.

if I forgot something important (it's late here, and I am tired, not sure that everything is mentionned) I will post it here.

Share this post


Link to post
Share on other sites

ça a fonctionné ? merci de me le faire savoir...

Does it work for you ? please let me know.

Share this post


Link to post
Share on other sites

Parfait danke schön Fabrice.
Je teste demain matin et je rapporte ça ici

Share this post


Link to post
Share on other sites

3. Lancer une nouvelle installation (boutique complète avec une nouvelle base de données - appelée 3)
4. Une fois la "nouvelle boutique" installée et fonctionnelle, activez tous les modules (cela va créer certaines nouvelles tables dans la base de données 2)

Bonjour
Je viens de découvrir ce tuto je n'ai pas encore testé
Mais je me pose une question pour le texte c-dessus ce n'est pas base de donnée 3 ???

Si je comprends bien un moment on a 3 boutiques l'original mise en travaux , la dupliquée et une nouvelle install , on synchronise la 2 et 3 et apres on copie la 2 dans l'original ?
Merci

Share this post


Link to post
Share on other sites

'est bien ça tu as 3 boutique mais tu copie la structure de la troisième sur la deuxième. Surtout pas touché à celle en prod.

Share this post


Link to post
Share on other sites

Juste j'ai pas pensé il faut éviter de mettre une beta ou un svn en prod :-S

Share this post


Link to post
Share on other sites

Rassure toi Fabrice est en prod avec et moi j'y passe cette semaine ;-)

Mais c'est à nos risque et péril !!!!!

a+

Share this post


Link to post
Share on other sites

c'est qui "risque et péril" ?
connais pas moa.

non, sinon ça marche très bien.
mieux que la 1.1

les svn sont qd même très stables. ils font du bon boulot la team... y'a pas à dire.

Share this post


Link to post
Share on other sites

Salut Fabrice
RECLAMATION SAV : j'ai tout cassé et je voudrais me faire remboursé ;-)
Nan c'est une blaaaaaaague.
Juste une précision toutefois : peux tu indiquer dans ton tuto le parcours que tu fais faire aux fichiers eux même (notamment images, modules, …)
et après Zou je me lance, demain ma nouvelle boutique est en ligne, non mais !!!
Merci encore l'ami

Share this post


Link to post
Share on other sites

ce JB ! il a encore bu trop de ricard...

sinon, j'ai mis le tuto un peu à jour.
voilou.

Share this post


Link to post
Share on other sites

Merci Fabrice, pour la synchro, je savais pas comment faire... ton tuto est nikel :-))

Share this post


Link to post
Share on other sites

Dites vous zavé pas un problème de utf8 à la synchro des données dans Navicat ? moi il me bousille mes jolis accents

Share this post


Link to post
Share on other sites
Merci Fabrice, pour la synchro, je savais pas comment faire... ton tuto est nikel :-))


merci !! ça fait plaisir...

Share this post


Link to post
Share on other sites
Dites vous zavé pas un problème de utf8 à la synchro des données dans Navicat ? moi il me bousille mes jolis accents


'lo JB ! moi ça ne pose aucun problème.
un paramètre que t'aurais changé ?
perso j'utilise les param par défaut dans navicat.

Share this post


Link to post
Share on other sites

'lu Fab. Ben non il me fait ça depuis l'install je vais fouillé dans l'aide Merci quand même les zamis (je suis très en Z ce soir peut être ai-je envie de faire ZzZzZzZzZzzZzZZzz ?)

Share this post


Link to post
Share on other sites

Ne serait-il pas plutôt opportun de mettre en place un système de mise à jour automatique de PRESTASHOP qui pourrait être déclenchée directement à partir du panneau d'administration ?

Je pense que PRESTASHOP est véritablement un programme formidable et je crois qu'il mériterait d'être doté de cette formidable avancée de permettre aux administrateurs de site presta de passer d'une version à une autre.

Pour ma part, j'aimerai passerai passer de la version stable Version 1.1.0.5 vers la version 1.2 lorsqu'elle sera annoncée stable.

Mais j'ai l'impression que ce ne sera pas très simple d'y passer...

Sauf, si la TEAM met à disposition un système de mise à jour automatique... d'ici là !

Ce serait super génial !

Share this post


Link to post
Share on other sites

je ne peux que partager cet avis... j'apréhende également un peu !!! Par ex, mon module ATOS installé par la prestateam sera t 'il toujours ok après la mise à jour ?

Share this post


Link to post
Share on other sites

+100000 cher azurshop !
Arnaud 06, chez moi le module cybermut passe nickel.

Share this post


Link to post
Share on other sites

Cher Fabrice, y-at'il une maniere d'utiliser SmartSVN pour mettre à jour les fichiers de la SVN sur le ftp (sur une boutique test, pas en prod bien sur) ???
J'aimerai bien que tu me dise oui ;-)

Share this post


Link to post
Share on other sites

Pourquoi vous ne fournissez pas les fichiers de comparaison pour les mises à jours

Share this post


Link to post
Share on other sites

bonjour
y a t il quelqu'un qui a fait une mise a jour de prestashop puis mis sa base a jour ?

comment avez vous fait car la methode dite au premier mail est elle toujours bonne car plus da table et differente dans la derniere version

donnez une methode fiable, merci.

Share this post


Link to post
Share on other sites

Je me suis mis un peu à SVN pour voir comment ça marche, et les nouveautés. Intéressant !

Par contre j'ai un problème.
J'utilise WinMerge pour comparer les fichiers de différentes version.

Le problème est qu'il trouve toujours des fichiers différents, même si les fichiers sont identiques.

Utilisez-vous WinMerge et avez-vous réglé ce problème (genre configuration à modifier) ?
Utilisez-vous un autre soft pour comparer les versions de fichiers ?

Merci d'avance pour votre aide

Share this post


Link to post
Share on other sites

Je crois que cette méthode est légèrement incorrecte puisque certains scripts d'update modifient le contenu de la base, pas seulement la structure. Mais dans l'ensemble c'est bon. Un autre outil qui permet de faire la synchronisation des schémas de BDD est MySQL Workbench, qui a l'avantage d'être gratuit.

Est-ce que quelqu'un (un dev par exemple :-)) sait si on peut utiliser le "install-dev" du svn pour faire la mise à jour ?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More