Comment désinstaller drush via composer?

13

Il existe une méthode d' installation de drush via composer :

composer global require drush/drush:dev-master

Mais comment le désinstaller à l'aide de composer?

Kenorb
la source
3
Pas vraiment lié à Drupal en tant que tel mais stackoverflow.com/questions/19217477/…
Clive
4
Merci, je n'ai pas vu ça. Drush a la documentation pour l'installer, donc je pense qu'il devrait y avoir des informations liées à drush comment le désinstaller.
kenorb

Réponses:

23

Il semble qu'il n'y ait pas de commande de suppression unique, vous devez donc:

  1. Modifiez votre composer.jsonfichier, par exemple

    vim ~/.composer/composer.json

    et supprimez la ligne contenant le drush. Enregistrez le fichier.

  2. Mettre à jour les packages PHP Composer en:

    composer global update

    Il supprimera un installé globalement drush.

Si vous n'avez pas de composercommande dans votre PATH, essayez à la php composer.pharplace.

Voir: Comment supprimer un package du composeur? .

Kenorb
la source
Il n'y a aucune mention drushdans mon ~/.composer/composer.json. Même moi, je composer global updatene le supprime pas. Je peux toujours le voir en utilisant la drush versioncommande. Pourquoi en est-il ainsi? J'ai PHP 5.3.29 sur Ubuntu 14.04. S'il vous plaît donnez votre avis.
Niladri Sarkar
@NiladriSarkar Peut-être que drush a été installé par la méthode différente. Vérifiez which drushou vérifiez à quel package ce fichier appartient, etc.
kenorb
which drushmontre /usr/local/bin/drush. Et j'ai installé drush en utilisant composer. Référence: docs.drush.org/en/master/install et docs.drush.org/en/master/install-alternative . Comment puis-je le résoudre maintenant, aidez-moi!
Niladri Sarkar
@NiladriSarkar Il peut s'agir simplement d'un lien symbolique, alors vérifiez où il pointe ou supprimez simplement le lien symbolique. Il est préférable de poser une autre question en disant que votre drush n'est pas là composer.jsonet qu'il est toujours là, mais c'est plutôt une question au superutilisateur. Puisque ce ne sera pas rapide. Ou vous pouvez ajouter de la prime à celui-ci en clarifiant comment cela ne résout pas le problème pour vous. Normalement, il doit être supprimé par composer global updatesi global composer.jsne l'a pas.
kenorb
11

Vous pouvez maintenant exécuter composer [global] remove drush/drushpour le désinstaller.

Blake Morgan
la source
Je devais utiliser composer global remove drush/drush. Non []
Chris
@chris Lorsque les gens donnent des exemples de commandes, ils mettent souvent des arguments facultatifs [brackets]. Cela signifie donc soit composer remove drush/drushou composer global remove drush/drush.
Ken Williams