drush cex --skip-modules
foi removido em favor do config_split, conforme explicado nesta edição, portanto, as soluções aqui baseadas em drush não funcionaram para mim.
Aqui está a solução baseada na solução Duncanmoo usando o módulo config_exclude
1. Instale config_exclude usando o Composer require --dev e configure-o
$ composer require --dev drupal/config_exclude
$ drush en config_exclude -y
$ nano sites/default/setting.php
permita que o settings.php seja usado no seu ambiente de desenvolvimento local
if (file_exists($app_root . '/' . $site_path . '/settings.local.php')) {
include $app_root . '/' . $site_path . '/settings.local.php';
}
Adicionar configurações config_exclude no arquivo local
$ nano sites/default/setting.local.php
aqui estão algumas configurações de amostra
$settings['config_exclude_modules'] = [
'devel',
'config_exclude',
'config_filter',
...
'stage_file_proxy',
];
NOTA1: config_filter é uma dependência config_exclude, portanto, se você não precisar da produção, poderá excluí-lo acima
NOTA 2: O settings.local.php
não é um requisito. Depende se é controlado pelo seu VCS ou não.
2. O compositor exige --dev
Ao habilitar um módulo puramente para desenvolvimento, use o sinalizador --dev:
$ composer require --dev drupal/devel
Isso resulta no acréscimo dessas dependências no arquivo composer.json em require-dev:
...
"require-dev": {
"drupal/twig_xdebug": "^1.0",
"drupal/devel": "^1.0@RC"
}
}
Portanto, se você instalar o site SEM seus módulos de desenvolvimento, use:
$ composer install --no-dev
NOTA: Nos ambientes de preparação e produção, você sempre deve fazer --no-dev
3. use drush cex como você normalmente usa
$ drush cex
não exportará nenhuma das configurações de módulos excluídos
NOTA: Tenho notado core.extension configurações parecem ter sido modificado após a execução do comando acima, mas o .yml correspondente nunca é escrita no disco rígido (mesmo após a confirmação will be deleted and replaced with the active config
) então não há nada a ser comprometidos, eu acho que depende do internos do módulo config_exclude
drush
aceitável? Eu descobri no outro diadrush config-export --skip-modules=devel
. Pode haver algo semelhante sem usar drush, mas eu não sei.