Git est-il désormais le seul moyen d'installer Drush?

11

Faire le tour en essayant de trouver la bonne façon d'installer Drush sur un système Linux CentOS. J'ai configuré Git, mais comme je ne prévois pas de contribuer au code Drush pour le moment, il n'est pas clair que je devrais utiliser Git.

Certaines directions disent d'utiliser PEAR, mais quand je vais à la page du projet Drush, les directions disent d'obtenir Drush 6 de Git. Tutoriels J'ai trouvé des démos wget et PEAR, pas Git. Et la vue de la page du projet Git dit: "Utilisez notre projet Github pour contribuer du code, signaler des bogues ou demander des fonctionnalités", aucune de ces dispositions ne s'applique.

Un Drupalista expérimenté pourrait-il répondre aux questions suivantes?

  1. Git est-il désormais la seule méthode pour obtenir Drush? Quelqu'un a posé une question similaire il y a plus d'un an lorsque PEAR était toujours recommandé.
  2. Si Git est le chemin à parcourir, j'ai lu que drush ne devrait pas être installé dans les répertoires du site Web, alors dans quel répertoire est-il recommandé de se trouver lorsque j'appelle ce qui suit?

    git clone --branch 7.x-5.x http://git.drupal.org/project/drush.git

J'ai hâte d'utiliser Drush. Merci!

user20776
la source

Réponses:

12

Drush a déménagé sur GitHub il y a quelques semaines. La maison officielle est maintenant: https://github.com/drush-ops/drush

La méthode préférée actuelle consiste à installer avec composer :

composer global require drush/drush:6.*

Si vous travaillez avec Drupal 8, ou si vous avez besoin d'un patch qui n'a pas été rétroporté, vous pouvez travailler avec la dernière version:

composer global require drush/drush:dev-master

Vous pouvez également utiliser Composer pour installer une version particulière.

Vous pouvez l'installer manuellement; et les récupérations GitHub normales s'appliquent. Vous pouvez télécharger le master (le lien se trouve sur la page principale) ou cloner le référentiel localement. Lorsque vous clonez localement, vous pouvez retirer n'importe quelle balise souhaitée.

Je l'ai installé dans mon répertoire personnel, par exemple

cd ~
git clone https://github.com/drush-ops/drush.git drush

Après, vous devez exécuter le compositeur

cd ~/drush
composer install

J'ai ensuite mis ~ / drush / dans mon $PATH:

export PS1=$PATH:~/drush/

Tout devrait fonctionner normalement.

Sidenote. Même si vous ne voulez pas contribuer en retour, le suivi de l'ensemble de votre site avec git est un excellent moyen de gérer le dev / live et de sauvegarder les oopsies.

mpdonadio
la source
Cela ne semblait pas fonctionner pour moi. Ma compréhension est que vous devez utiliser le compositeur maintenant
Utilisateur
@User composer est la méthode recommandée en ce moment, mais vous pouvez git clone, mais vous devez faire un composer installaprès. Je ne me souviens pas quand cela est devenu une exigence, mais c'est arrivé quelque temps après cette réponse.
mpdonadio
8

(1). Oui, vous pouvez toujours installer Drush avec de la poire. Voir la section "Installation - Pear" dans le fichier README.md, qui s'affiche sur la page du projet: https://github.com/drush-ops/drush

Pour Pentecôte:

pear channel-discover pear.drush.org
pear install drush/drush

(2). Si vous installez Drush à partir de git, la meilleure branche est 6.x et la balise la plus récente est 6.0.0.

Si vous installez à partir de Pear comme indiqué ci-dessus et que vous n'obtenez pas Drush 6.0, veuillez publier un bogue sur le projet GitHub. (Désolé, vous n'avez pas le temps de démarrer une machine virtuelle et de tester l'installation de pear en ce moment, mais elle est supposée fonctionner.)

Mise à jour: j'ai raté la deuxième question dans (2). Vous pouvez le mettre où vous voulez. Beaucoup de gens le mettent dans / usr / local / drush lors d'une installation à l'échelle du système. Je l'installe généralement par utilisateur, dans ~ / local / drupal / drush. Assurez-vous simplement d'ajouter également le dossier que vous utilisez à votre CHEMIN. Comme chrisjlee, j'ai un script d'installation que vous pouvez examiner si vous le souhaitez: https://github.com/greg-1-anderson/utiliscripts/blob/master/move-in

greg_1_anderson
la source
L'installation de pear fonctionne correctement pour 6.0.0, j'ai mis à niveau un serveur hérité vers l'autre jour
Clive
Il semble que le canal pear.drush.org ne fonctionne plus.
Henrik
3

Vous pouvez essayer mon projet. Il s'installera automatiquement pour vous:

https://github.com/chrisjlee/uamp-files/blob/master/drush/setup.sh

C'est assez simple. Cela suppose que vous ayez installé git.

chrisjlee
la source
1
Je devais remplacer git copargit checkout
frazras
1
ya J'ai aussi obtenu ceci en essayant d'installer 'git:' co 'n'est pas une commande git. Voir 'git --help'. Voulez-vous dire l'un d'entre eux? commit clone log '
pal4life
2

Les versions de dépôt de package de Drush sont obsolètes, et il y a eu des améliorations majeures à Drush qui en font une meilleure idée pour l'installer à partir du dépôt git. Si vous gardez Drupal à jour, vous devriez garder Drush à jour avec lui car les choses peuvent se casser lorsque les deux ne sont pas mis à jour ensemble.

Drush doit être installé dans / usr / local / bin ou / opt sur la plupart des systèmes * nix. / opt peut être préférable si vous souhaitez pouvoir sauvegarder et restaurer l'installation et enregistrer vos paramètres.

Routhinator
la source
2

Depuis la version 9, Drush est installé par Composer lorsqu'il est répertorié comme dépendance de Drupal 8. Voir aussi sur docs.drush.org .


Instructions pour installer ou mettre à niveau un Drush 8 global (sans utiliser Git):

# Browse to https://github.com/drush-ops/drush/releases and download the drush.phar attached to the latest 8.x release.

# Test your install.
php drush.phar core-status

# Rename to `drush` instead of `php drush.phar`. Destination can be anywhere on $PATH. 
chmod +x drush.phar
sudo mv drush.phar /usr/local/bin/drush

# Optional. Enrich the bash startup file with completion and aliases.
drush init

Des informations plus détaillées sont disponibles sur docs.drush.org . Il existe également une instruction pour une installation sur site.

Henrik
la source
1
C'est ainsi que je l'ai installé sur mon ordinateur.
kiamlaluno
1

Sur OS X / macOS, je l'ai toujours installé avec Homebrew . C'est juste brew install drush. Fin de l'histoire.

Ce n'est que récemment depuis la sortie de D8 et que Composer a obtenu l'état de l'art que je l'ai toujours installé localement via composer require drush/drushpour l'utiliser dans des conteneurs Docker, etc. par exemple.


Drush 9 (D8.3 +)

En fait, depuis la version 9, l'installation de Drush avec Composer est le seul et unique moyen recommandé d'installer Drush:

Drush 9 ne prend en charge qu'une seule méthode d'installation. Cela nécessite que votre site Drupal 8 soit construit avec Composer et Drush soit répertorié comme une dépendance.

@see http://docs.drush.org/en/master/install/

leymannx
la source
0

Ce qui suit est de https://www.drupal.org/node/2009426 :

Voici comment j'installe Drush sur les systèmes CentOS sur lesquels H-Sphere est installé comme panneau de contrôle

1 - Prenez une copie de Drush et décompressez-la dans votre dossier partagé

sudo wget --quiet -O - http://ftp.drupal.org/files/projects/drush-7.x-5.9.tar.gz | sudo tar -zxf - -C /usr/local/share

(Notez, changez le lien au-dessus de vous le lien vers la dernière version de drush sur Drupal.org.)

2 - Créez un lien symbolique vers où Drush peut être trouvé sur votre serveur

sudo ln -s /usr/local/share/drush/drush /usr/local/bin/drush

3 - Obtenez Drush pour télécharger automatiquement les "trucs" requis

sudo drush

Drush ne fonctionnera pas encore car il ne saura pas où trouver php, donc

4 - Ouvrez votre fichier bash_profile et modifiez la ligne PATH à partir de quelque chose comme ça

bash_profile: PATH=/hsphere/shared/bin:/hsphere/shared/sbin:/hsphere/local/var/vpopmail/bin:/usr/local/bin:/usr/local/sbin:$PATH:$HOME/bin

à quelque chose comme ça (notez le chemin php dans cette version):

PATH=/hsphere/shared/bin:/hsphere/shared/sbin:/hsphere/local/var/vpopmail/bin:/usr/local/bin:/usr/local/sbin:/hsphere/shared/php53/bin:$PATH:$HOME/bin

5 - Redémarrez votre serveur et YEE HAW!


Avec ces instructions du site officiel de Drupal, il n'y a absolument aucun besoin de git ou d'autres outils tiers. Im parfaitement bien avec l'installation de drush sur mon vm multi-côté de cette façon.

Peter Berwanger
la source
0

Drush 9, qui au moment où j'écris cette réponse est la branche principale, ne prend en charge qu'une seule méthode d'installation: le site Drupal 8 doit être construit avec Composer et Drush doit être répertorié comme dépendance. L'installer globalement n'est plus supporté. Moshe Weitzman dit clairement dans un commentaire à Drush 8.x ne pas installer Drupal 8.4.x et maître Drush n'installe pas Drupal 8.3.x .

L'installation globale de Drush n'est plus prise en charge car vous obtenez des erreurs exactement comme celle décrite ici. Les documents d'installation ne le mentionnent déjà plus. Chaque projet doit nommer Drush comme dépendance. C'est très bien si les sites Drush8 respectent l'installation globale et Drupal 8.3-. Pour Drupal 8.4, ils vont devoir utiliser Drush9 comme dépendance.

La documentation de la branche principale le dit également dans une courte note.

Drush 9 (à venir bientôt!) Ne prend en charge qu'une seule méthode d'installation. Cela nécessite que votre site Drupal 8 soit construit avec Composer et Drush soit répertorié comme une dépendance.

La note fait référence à Drupal 8 parce que la configuration minimale requise pour Drush 9 (qui est la branche principale, en ce moment) est Drupal 8.3+. La documentation de Drush 8, rapporte les commandes suivantes comme méthode pour l'installer globalement.

# Download latest stable release using the code below or browse to github.com/drush-ops/drush/releases.
wget http://files.drush.org/drush.phar

# Test your install.
php drush.phar core-status

# Rename to `drush` instead of `php drush.phar`. Destination can be anywhere on $PATH. 
chmod +x drush.phar
sudo mv drush.phar /usr/local/bin/drush

# Optional. Enrich the bash startup file with completion and aliases.
drush init
kiamlaluno
la source