Оновлення до нової версії розробленого модуля за допомогою Drush (ігнорування точок / рекомендованих релізів, без зриву контролю версій)


20

[Примітка. Це запитання відхиляється від попереднього мого питання тут , але окремо / далі .]

Я використовую Drush дуже довго, але кожен так часто застрягаю. На даний момент я дійсно не впевнений, як це зробити.

Сценарій: зараз сайт використовує розроблений реліз, датований раніше. Тим часом, не було створено точкових релізів, але є новіший реліз Dev. Отже, у нас є щось на кшталт:

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) 

Doing drush dl <module>-6.x-1.x-devперезаписує існуючий каталог із останньою версією 1.x dev. Це добре, але це папка .svn папки.

Якщо я це зробити drush upc <module>, він завантажить точковий випуск (див. Редагування нижче), що я не хочу, але якщо я це зробити drush upc <module>-6.x-1.x-dev, він просто оновить дані оновлення, а потім скаже мені "Вказана версія вже встановлена" у відповідному рядку на вихід.

Тож як я можу використовувати "drush", щоб перезаписати старий реліз розробника, встановивши новий на його місце, не збиваючи папку SVN?

EDIT: Насправді в цьому випадку drush upc <module>завантажується правильна версія, але я майже впевнений, якби випуск точки був датований як 6.x-1.0 (2011-Jan-24), він отримав би цю. Хтось хоче уточнити / виправити?

Відповіді:


9

Я знайшов ваше запитання саме зараз, тому що у мене було саме таке питання. Не знайшов точної відповіді, але це працювало для мене:

#svn rm <module>  
#svn commit -m"removing the module... whatever you want to write"  
#drush dl <module>-6.x-2.x-dev  
#svn add <module>  

Чомусь, не виконуючи фіксування між rm та dl, виникло проблема зі svn. Я не знаю достатньо про svn, щоб знати, чому, але був би вдячний, якби хтось міг деталізувати!


Привіт @rainbreaw, можливо, відповідь на мій інший Q тут може бути корисним?
NikLP


2

Можливо, є кілька завдань установки, які потрібні новій версії модуля для належної роботи, наприклад, якщо версія dev має іншу схему.

Тому перш ніж drush dl module-7.x.2.x поглянути на видалення та встановлення деталей у модулі.

Остерігайтеся, якщо у вас є дані, які ви не хочете втрачати в таблицях db. Візьміть резервну копію, якщо ви переживаєте або не впевнені.

Якщо вам потрібно, вимкніть та видаліть модуль перед завантаженням та ввімкненням нового модуля.

Скористайтеся барабанними дисками, а потім натисніть і видаліть pm


1
Видалення модуля, можливо, також може відкинути всі збережені в базі даних. Чи не повинен скрипт update.php обробляти будь-які зміни схеми від версії до версії?
Тоні Патрінос

Це хороший момент, я поправлю свою відповідь
кум
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.