Ich habe eine Drupal 8.2.0-Site mit installiert composer create-project drupal/drupal testsite
.
Jetzt möchte ich es auf Drupal 8.2.1 aktualisieren. Laufen composer update drupal/drupal
funktioniert jedoch nicht. Es wird der folgende Fehler ausgegeben:
Das zum Update aufgeführte Paket "drupal / drupal" ist nicht installiert. Ignorieren.
Wie mache ich das? Die Unterstützung ist in example.gitignore klar dokumentiert.
# Ignore core when managing all of a project's dependencies with Composer
# including Drupal core.
# core
Es muss also eine Möglichkeit geben, dies mit dem Komponisten zu tun, aber wie?
Ich glaube, ich habe es gelöst. Ich dachte mir, ich würde eine andere root composer.json-Datei benötigen, die das Drupal-Paket abruft, anstatt es zu ersetzen, aber ich wusste nicht, wie ich das machen soll.
Glücklicherweise hat dies bereits jemand getan und Drupal komponentenfreundlich neu verpackt: https://github.com/drupal-composer/drupal-project (anscheinend noch keine stabile Version.)
Durch die Verwendung
composer create-project drupal-composer/drupal-project:8.x-dev --stability dev drupal-dir
konnte ich eine Installation erhalten, die mit Composer aktualisiert werden kann.quelle
composer create-project
verwendet das angeforderte Projekt als Vorlage für das neue Projekt. Bei Ihrem ersten Versuch wurde git.drupal.org/project/drupal.git als Vorlage für Ihr neues Projekt verwendet. Wenn Sie stattdessen github.com/drupal-composer/drupal-project als Vorlage verwenden, wird Drupal zu einem Teil des Projekts. In der Tatdrupal/drupal
verwendet esdrupal/core
(für das Kernverzeichnis) unddrupal-composer/drupal-scaffold
für die anderen wichtigen Dateien wie index.php und .htaccess.Der Befehl
composer create-project
klont das angeforderte Paket, in diesem Fall https://git.drupal.org/project/drupal.git . Am Ende des Projekterstellungsprozesses sollten Sie gefragt werden, ob Sie den vorhandenen VCS-Verlauf entfernen möchten. Wenn Sie geantwortet habenn
, können Sie über das Upstream-Drupal-Repository aktualisieren. Navigieren Sie zur Testseite und verwenden Sie git, um die gewünschte Drupal-Version abzurufen und zu überprüfen. Führen Sie dann auscomposer install
, um die in composer.json und composer.lock der aktualisierten Version von Drupal identifizierten Abhängigkeiten abzurufen.quelle
In der Kommandozeile mussten wir Drupal Core benötigen (durch Ihre Version ersetzen):
In der Datei composer.json unter "Ersetzen" mussten wir "drupal / core" entfernen: "^ 8.6". Ersetzen sieht also so aus:
jetzt in unserer Datei composer.json. Wir rannten dann:
und Drupal auf die neueste Version aktualisiert.
quelle