web-dev-qa-db-ja.com

Composerを使用したメジャーモジュールの更新

8.8.5にはメジャーアップデートが必要なモジュールがいくつかあります。 データや設定を失うことのないベストプラクティスは何ですか?

例: drupal/admin_toolbar 1.27.0 2.2.0

  • De admin backoffice Drupalでモジュールをアンインストールする必要がありますか?
  • もしそうなら、私は最初に両方のモジュールをアンインストールする必要があります:必須:admin_toolbar_tools、adminimal_admin_toolbar
  • 最後にadmin_toolbarをアンインストールします
  • Composer 削除 drupal/admin_toolbar
  • Composer 必須 drupal/admin_toobar
  • ブラシを更新しましたb
  • ドラッシュcr

それは正しい方法ですか?または、composerで古いバージョンを削除して、新しいバージョンを要求することはできますか?

1
Lance

いいえ、最初にモジュールをアンインストールする必要はありません。更新時にモジュールを有効にして、可能なデータベース更新を実行できるようにします。これは、既存のデータ/エンティティを更新するために実行できます。すでに最新の1.xバージョンがインストールされている場合は、簡単に実行できます

  1. $ composer require drupal/admin_toolbarモジュールをアップグレードします。
  2. $ drush cr && drush -y updbデータベースの更新を実行します。
  3. そして最後に $ drush -y cex最終的に更新された構成をエクスポートします。

まだ最新の1.xバージョンがインストールされていない場合は、段階的にアップグレードすることをお勧めします。そして、そのために2つの連続リリースを行うことも、本当に安全にプレイするためです。

  1. $ composer update drupal/admin_toolbar --with-dependencies && drush cr && drush -y updb && drush -y cex最初に最新の1.xバージョンに更新し、次にリリースします。
  2. その後 $ composer require drupal/admin_toolbar && drush cr && drush -y updb && drush -y cexは、最新のメジャーアップグレードを取得してから、別のリリースを取得します。
2
leymannx