droath / drush-module-sync
根据定义的范畴同步 Drupal 模块。
Requires
- php: >=5.4
- drush/drush: ^8.1
- symfony/yaml: ^2.8
Requires (Dev)
- drupal/coder: ^8.2
- drupal/drupal: ^8.3
- phpunit/phpunit: ^5.5
- squizlabs/php_codesniffer: ^2.0
This package is not auto-updated.
Last update: 2024-09-15 02:41:08 UTC
README
根据定义的范畴同步 Drupal 模块。范畴是任意的,但在大多数情况下,它们被设置为匹配不同的环境,这些环境通常基于不同的构建过程被调用。根据在 YAML 配置中定义的范畴定义,将同步(安装/卸载)适当的模块。
依赖关系
- Drush
- Drupal 8
类似概念
- Master - Drupal 7
入门指南
首先,您需要使用 composer 下载 drush-module-sync
库。
composer require droath/drush-module-sync
接下来,您需要创建一个 module-sync
配置文件。可以通过执行以下命令完成此操作
drush module-sync-generate
一旦调用,该命令将提示输入以生成您的 module-sync.yml
配置。在添加范畴时,我通常输入 local 和 stage,因为它们是常见的环境,需要安装或卸载不同的模块。默认情况下,module-sync.yml
文件将生成在 Drupal 网站路径中,通常为 path-to-drupal/sites/default
(如果您不是使用多站配置)。
您可以通过提供 --path 选项将保存路径设置为不同的目录。
drush module-sync-generate --path=../configs
现在您可以编辑生成的 module-sync.yml
配置。您可以在 modules
指令中为每个范畴定义不同的模块
scope: stage: extend_base: true modules: - file_stage_proxy local: extend_base: true modules: - devel - file_stage_proxy base: - field - views ...
如你所见,范畴可以从 base
指令扩展,这有助于在不同的范畴之间删除模块冗余。如果您不想从基础扩展,只需将 extend_base
设置为 false
。请确保从 base
指令中删除任何模块,如果您只想为特定的范畴安装该模块,该模块应已定义。
最后,在您调整了 module-sync
配置到您满意的程度后,您可以运行以下命令以执行同步过程。
drush module-sync --scope=local
注意:您可以通过传递 --yes|-y 标志来确认所有提示。
该命令将评估给定范畴中已安装或需要卸载的模块。请确保您仅在确信所有模块都已计入的情况下使用 --yes 标志运行此命令,否则可能会产生不良后果。