webflo/drush-shim

此包已被废弃且不再维护。作者建议使用 drush/drush-launcher 包。

为您的全局PATH提供drush可执行文件

安装: 3,469

依赖者: 0

建议者: 0

安全: 0

星标: 211

关注者: 13

分支: 41

0.10.0 2022-01-13 17:50 UTC

README

一个围绕Drush的小型包装,用于您的全局$PATH。

为什么?

为了避免依赖性问题,最好通过Composer(composer require drush/drush)在每个项目的基础上要求Drush。这通过将Drush放置在vendor/bin/drush来使Drush对您的项目可用。

但是,在命令行中输入vendor/bin/drush以执行Drush命令是不方便的。通过在本地机器上全局安装drush启动器,您只需在命令行中输入drush,启动器就会找到并执行位于您的项目vendor目录中的特定于项目的drush版本。

安装 - Phar

  1. 通过以下CLI(代码)下载最新稳定版本或浏览到 https://github.com/drush-ops/drush-launcher/releases/latest

    OSX

    curl -OL https://github.com/drush-ops/drush-launcher/releases/latest/download/drush.phar

    Linux

    wget -O drush.phar https://github.com/drush-ops/drush-launcher/releases/latest/download/drush.phar
  2. 使下载的文件可执行: chmod +x drush.phar

  3. 将drush.phar移动到您的$PATH中列出的位置,并将其重命名为drush

    sudo mv drush.phar /usr/local/bin/drush
  4. Windows用户:在drush.phar相同的文件夹中创建一个drush.bat文件,包含以下行。这解决了Windows不知道drush文件与php相关联的问题

    @echo off
    php "%~dp0\drush" %*

更新

Drush启动器Phar能够自动更新到最新版本。

    drush self-update

替代方案

只需将/path/to/vendor/bin添加到您的$PATH的前面。当您系统上只有一个Drupal代码库时(例如,站点位于Docker中),这很简单。当您的系统有多个代码库时,考虑使用direnv在特定代码库的基础上添加到$PATH。 一个示例.envrc文件

回退

当找不到本地站点的Drush时,此启动器通常会抛出一个有用的错误。您可以通过导出一个环境变量来避免错误,并将执行交给全局Drush(任何版本)。

export DRUSH_LAUNCHER_FALLBACK=/path/to/drush

Xdebug兼容性

Drush启动器,如Composer默认禁用Xdebug。这大大提高了性能。您可以通过设置环境变量来覆盖此功能。DRUSH_ALLOW_XDEBUG=1 drush [command]

许可

GPL-2.0+