[NB: Cette question vient du dos, mais est distincte / à la suite d'une de mes précédentes questions, ici .]
J'utilise Drush depuis un bon moment, mais de temps en temps je suis perplexe. Pour le moment, je ne sais vraiment pas comment procéder.
Scénario: actuellement, le site utilise une version de développement, datée dans le passé. En attendant, aucune version ponctuelle n'a été créée, mais une nouvelle version de développement l'a été. Nous avons donc quelque chose comme:
Reroute Email 6.x-1.x-dev (2010-Sep-27)
Recommended version: 6.x-1.0 (2008-Jul-24)
Development version: 6.x-1.x-dev (2011-Feb-25)
Faire drush dl <module>-6.x-1.x-dev
écrase le répertoire existant avec la dernière version de dev 1.x. C'est bien, mais cela supprime le dossier .svn.
Si je le fais drush upc <module>
, il téléchargera la version ponctuelle (voir la modification ci-dessous), ce que je ne veux pas, mais si je le fais drush upc <module>-6.x-1.x-dev
, il actualise simplement les données de mise à jour et me dit ensuite "Version spécifiée déjà installée" sur la ligne appropriée sur le production.
Alors, comment puis-je utiliser drush pour écraser l'ancienne version de développement, obtenir la nouvelle à sa place, sans jeter le dossier SVN?
EDIT: En fait, dans ce cas, drush upc <module>
télécharge la version correcte, mais je suis sûr que si la version de point était datée comme 6.x-1.0 (2011-Jan-24), elle l'aurait obtenue. Quelqu'un veut-il clarifier / corriger?
la source
Essayez
drush dl module-6.x-1.x-dev --svnsync
.la source
drush
selon GH # 1056 .Il peut y avoir des tâches d'installation dont la nouvelle version d'un module a besoin pour fonctionner correctement, par exemple si la version de développement a un schéma différent.
Avant de
drush dl module-7.x.2.x
jeter un œil aux détails de désinstallation et d'installation dans le module.Attention si vous avez des données que vous ne voulez pas perdre dans les tables db concernées. Faites une sauvegarde si vous êtes inquiet ou incertain.
Si vous en avez besoin, désactivez et désinstallez le module avant de télécharger et d'activer le nouveau module.
Utilisez drush dis puis drush pm-uninstall
la source