drush cex --skip-modules
telah dihapus karena config_split seperti yang dijelaskan dalam masalah ini sehingga solusi di sini berdasarkan pada drush tidak bekerja untuk saya.
Berikut adalah solusi berdasarkan solusi Duncanmoo menggunakan modul config_exclude
1. Instal config_exclude menggunakan Composer memerlukan --dev dan konfigurasikan
$ composer require --dev drupal/config_exclude
$ drush en config_exclude -y
$ nano sites/default/setting.php
izinkan pengaturan.php untuk digunakan pada lingkungan dev lokal Anda
if (file_exists($app_root . '/' . $site_path . '/settings.local.php')) {
include $app_root . '/' . $site_path . '/settings.local.php';
}
Tambahkan pengaturan config_exclude dalam file lokal
$ nano sites/default/setting.local.php
di sini adalah beberapa pengaturan sampel
$settings['config_exclude_modules'] = [
'devel',
'config_exclude',
'config_filter',
...
'stage_file_proxy',
];
NOTE1: config_filter adalah dependensi config_exclude jadi jika Anda tidak membutuhkannya, Anda dapat mengecualikannya di atas
CATATAN2: Ini settings.local.php
bukan keharusan. Itu tergantung pada apakah dikendalikan oleh VCS Anda atau tidak.
2. Komposer memerlukan --dev
Saat mengaktifkan modul yang murni untuk pengembangan, gunakan flag --dev:
$ composer require --dev drupal/devel
Ini menghasilkan dependensi yang ditambahkan ke file composer.json di bawah keharusan-dev:
...
"require-dev": {
"drupal/twig_xdebug": "^1.0",
"drupal/devel": "^1.0@RC"
}
}
Jadi, jika Anda menginstal situs TANPA modul dev Anda gunakan:
$ composer install --no-dev
CATATAN: Pada lingkungan pementasan dan produksi Anda, Anda harus selalu melakukan --no-dev
3. gunakan drush cex seperti biasa
$ drush cex
tidak akan mengekspor pengaturan modul yang dikecualikan
CATATAN: Saya punya diperhatikan core.extension pengaturan tampaknya telah dimodifikasi setelah menjalankan perintah di atas tetapi .yml sesuai tidak pernah ditulis pada hard drive (bahkan setelah mengkonfirmasikan will be deleted and replaced with the active config
) sehingga tidak ada yang akan berkomitmen, saya kira itu tergantung pada internal modul config_exclude
drush
dapat diterima? Saya tahu beberapa hari yang laludrush config-export --skip-modules=devel
. Mungkin ada yang serupa tanpa menggunakan drush, tapi saya tidak tahu.