Aggiornamento a una nuova versione di sviluppo di un modulo tramite Drush (ignorando il punto / le versioni consigliate, senza eliminare il controllo della versione)


20

[NB: questa domanda è sul retro, ma separata / successiva a una mia precedente domanda, qui .]

Sto usando Drush da un bel po ', ma ogni tanto vado perplesso. Al momento, non sono davvero sicuro di come procedere.

Scenario: attualmente, il sito utilizza una versione di sviluppo, datata in passato. Nel frattempo, non è stato creato alcun rilascio punto, ma è stato rilasciato un rilascio dev più recente. Quindi abbiamo qualcosa come:

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) 

Fare drush dl <module>-6.x-1.x-devsovrascrive la directory esistente con l'ultima versione dev 1.x. Va bene, ma elimina la cartella .svn.

Se lo faccio drush upc <module>, scaricherà il rilascio del punto (vedi modifica sotto), che non voglio, ma se lo faccio drush upc <module>-6.x-1.x-dev, aggiorna solo i dati di aggiornamento e quindi mi dice "Versione specificata già installata" sulla riga pertinente sul produzione.

Quindi, come posso usare drush per sovrascrivere la vecchia versione di sviluppo, rimettendo la nuova al suo posto, senza eliminare la cartella SVN?

EDIT: In realtà, in questo caso, drush upc <module>scarica la versione corretta, ma sono abbastanza sicuro che se il rilascio del punto fosse datato come 6.x-1.0 (2011-Jan-24) l'avrebbe ottenuta. Qualcuno vuole chiarire / correggere?

Risposte:


9

Ho trovato la tua domanda proprio ora perché avevo la stessa identica domanda. Non ho trovato una risposta esatta, ma questo ha funzionato per me:

#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>  

Per qualche ragione, non eseguire il commit tra rm e dl ha causato un problema con svn. Non so abbastanza di svn per sapere perché, ma sarei grato se qualcuno potesse elaborare!


Ciao @rainbreaw, forse la risposta all'altra mia Q qui potrebbe essere utile?
NikLP,


2

Potrebbero essere necessarie alcune attività di installazione necessarie per il corretto funzionamento della nuova versione di un modulo, ad esempio se la versione dev ha uno schema diverso.

Quindi, prima di drush dl module-7.x.2.x dare un'occhiata alla disinstallazione e installare i dettagli nel modulo.

Fai attenzione se hai dati che non vuoi perdere nelle tabelle db interessate. Fai un backup se sei preoccupato o incerto.

Se necessario, disabilitare e disinstallare il modulo prima di scaricare e abilitare il nuovo modulo.

Utilizzare drush dis e quindi drush pm-uninstall


1
La disinstallazione del modulo potrebbe anche eliminare tutti i dati salvati nel database. Lo script update.php non dovrebbe gestire eventuali modifiche dello schema da una versione all'altra?
Tony Patrinos,

È un buon punto, modificherò la mia risposta
chim il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.