backdrop / drush
此项目允许您使用 Drush 与 Backdrop CMS 一起使用。Drush 是用于操作内容管理系统的一个命令行工具。
Requires
- composer/installers: ^1.6
Requires (Dev)
- backdrop/coder: ^1.0
- phpunit/phpunit: ^8.2
This package is auto-updated.
Last update: 2024-09-15 18:50:15 UTC
README
此项目允许您使用 Drush 8 与 Backdrop CMS 一起使用。Drush 是用于操作内容管理系统的一个命令行工具。
此项目已过时。使用 bee 项目通过 CLI 与 Backdrop 交互是最好的方式。 如果您在 Backdrop 项目中使用 backdrop-drush 扩展,建议使用 PHP 7.4,因为 drush 8 与 PHP 8+ 有一些问题。Drush 8 也将在 Drupal 7 于 2025 年 1 月 15 日达到生命终点时停止支持。
此集成目前可以执行以下命令
drush dlb backdrop
:下载 Backdrop CMS。drush cc
:清除 Backdrop 中的单个或所有缓存。drush uli
:生成一次性登录链接。drush upwd
:更新选定用户的密码。drush st
:检查 Backdrop 网站的状况;引导、数据库连接等。drush cron
:运行 hook_cron() 中的常规间隔命令。drush updb
:通过 Backdrop update.php 脚本运行数据库更新。
drush pml
:显示可用的扩展列表(模块和主题)。drush dl
:下载和解压贡献模块、主题和布局。drush en
:启用一个或多个扩展(模块或主题)。同时启用依赖扩展。drush dis
:禁用一个或多个扩展(模块或主题)。同时禁用依赖扩展。drush pmu
:卸载一个或多个模块及其依赖模块。
drush bcex
:导出 Backdrop 网站配置。drush bcim
:导入 Backdrop 网站配置。drush bp
:为开发者生成样板代码;*.info 和 *.module 文件。drush sql-*
:MySQL 连接命令,例如sql-cli
或sql-conf
。drush scr
:使用 Backdrop API 执行脚本。drush ctl
:列出网站上可用的内容类型。(仅适用于 backdrush >= 1.1.0)
要查看可用的 drush 命令的完整列表(并非所有这些命令都一定与 Backdrop CMS 兼容)
drush help
要获取有关特定命令的更多信息
drush help <command>
Drush 可以执行许多其他命令,但它们需要更新才能用于 Backdrop。尽管一些命令可能通过 Backdrop 的兼容层工作,但到目前为止,任何未经测试的(可能危险的)命令不允许在 Backdrop 安装中运行。
作为 Drush 的替代方案,您可能希望考虑使用专门为 Backdrop 构建的 Backdrop Console。
安装
此项目要求您使用 drush 的 "8.x" 分支(https://github.com/drush-ops/drush/tree/8.x)。此扩展不兼容 drush 的较旧版本、新的 9.x 或 master 分支。
安装 Backdrop drush 扩展的方法有很多。所有这些方法都需要 drush 8.x
版本。主要两种方式是全局安装或站点本地安装。
全局安装的主要优点是安装一次 Backdrop Drush 扩展后,它就会在所有 Backdrop 网站上运行。缺点是它可能会影响 drush 在 Drupal 网站上的运行(有时会破坏一些命令)。我们尽力避免这种情况,但这种情况确实发生过。
站点本地安装的主要优点是您不会破坏 Drupal 网站或其他 Backdrop 网站。主要缺点是您需要在每个站点上安装 drush 和 backdrop drush。
使用 Lando 安装
我主要使用 Lando 进行开发,Lando 默认已经安装了 Backdrop Drush 扩展。我推荐使用 Lando 进行本地开发,因为它是一种隔离开发依赖项和工具的绝佳方式,特别适合 Backdrop 网站开发。
默认情况下,Lando 会安装 Backdrop Drush 扩展的最新稳定版本,但您也可以指向任何 git 标签或提交哈希。如果您想使用最新源代码运行 Backdrop Drush 扩展,可以使用以下示例 .lando.yml 文件。
作为站点本地安装
将 drush 正式版下载到您的 BACKDROP_ROOT
(您的 Backdrop 代码所在的位置。目录结构应类似于这样
└─ $ ∴ ll total 84 drwxrwxr-x 10 gff gff 4096 Jan 12 13:04 ./ <-- BACKDROP_ROOT drwxrwxr-x 3 gff gff 4096 Jan 12 13:01 ../ drwxrwxr-x 9 gff gff 4096 Jan 12 13:03 core/ drwxr-xr-x 11 gff gff 4096 Jan 12 13:04 drush/ <-- Drush 8.x -rw-rw-r-- 1 gff gff 554 Jan 12 13:03 .editorconfig drwxrwxr-x 4 gff gff 4096 Jan 12 14:16 files/ drwxrwxr-x 8 gff gff 4096 Jan 12 13:41 .git/ -rw-rw-r-- 1 gff gff 257 Jan 12 13:03 .gitignore -rw-rw-r-- 1 gff gff 6017 Jan 12 13:03 .htaccess -rwxrwxr-x 1 gff gff 578 Jan 12 13:03 index.php* drwxrwxr-x 2 gff gff 4096 Jan 12 13:03 layouts/ drwxrwxr-x 3 gff gff 4096 Jan 12 14:21 modules/ -rw-rw-r-- 1 gff gff 3978 Jan 12 13:03 README.md
然后将 Backdrop Drush 扩展添加到 BACKDROP_ROOT/drush/commands
目录。看起来可能如下
└─ $ ∴ ll total 40 drwxr-xr-x 9 gff gff 4096 Jan 12 13:04 ./ <-- BACKDROP_ROOT/drush/commands drwxr-xr-x 11 gff gff 4096 Jan 12 13:04 ../ drwxr-xr-x 6 gff gff 4096 Jan 12 17:36 backdrop/ <-- Backdrop Drush Extension drwxr-xr-x 4 gff gff 4096 Jan 12 13:42 core/ drwxr-xr-x 2 gff gff 4096 Jan 12 13:04 make/ drwxr-xr-x 4 gff gff 4096 Jan 12 13:04 pm/ drwxr-xr-x 2 gff gff 4096 Jan 12 13:04 runserver/ drwxr-xr-x 2 gff gff 4096 Jan 12 13:04 sql/ drwxr-xr-x 2 gff gff 4096 Jan 12 13:04 user/ -rw-r--r-- 1 gff gff 3049 Jan 12 13:04 xh.drush.inc
全局安装
如果您使用 composer 安装 drush,可以运行以下命令以要求 8.x 版本
composer global require drush/drush:8.x
要将 Drush 的 Backdrop 集成安装到项目中,请将此项目克隆或下载到任何支持 Drush 命令的位置。最常见的位置是您的用户主目录。
mkdir ~/.drush/commands
(如果已存在,则继续。)cd ~/.drush/commands
-- 获取最新 head 或最新稳定版:--- 最新 HEAD:wget https://github.com/backdrop-contrib/backdrop-drush-extension/archive/1.x-0.x.zip
--- 最新稳定版:https://github.com/backdrop-contrib/backdrop-drush-extension/releases/latest
unzip master.zip -d backdrop
- 清除 drush 缓存 --
drush cc drush
现在切换到 Backdrop 网站的目录并尝试一个命令!drush cron
很好。
用法
像使用 Drupal 网站一样使用 Drush。
许可
本项目是 GPL v2 软件。请参阅此目录中的 LICENSE.txt 文件以获取完整文本。
维护者
- Geoff St. Pierre @serundeputy
- Nate Haug @quicksketch
致谢
感谢所有 Drush 维护者对他们的项目所作的贡献,特别是
他们帮助使 Drush 对于 Backdrop 成为可能。
发布版本
我们使用 release-it
来管理发布。当您准备发布时
node_modules/.bin/release-it
- 注意:您需要在环境中设置您的
GITHUB_TOKEN
,以便在 GitHub 上推送和创建发布。