Um Drupal mit Composer zu aktualisieren, müssen Sie nur die "drupal/core": "~8.1"
Zeile vom Ersetzungsabschnitt in den erforderlichen Abschnitt verschieben. Am Ende ist der Inhalt der Datei composer.json wie folgt.
{
"name": "drupal/drupal",
"description": "Drupal is an open source content management platform powering millions of websites and applications.",
"type": "project",
"license": "GPL-2.0+",
"require": {
"composer/installers": "^1.0.21",
"wikimedia/composer-merge-plugin": "~1.3",
"drupal/core": "~8.1"
},
"minimum-stability": "dev",
"prefer-stable": true,
"config": {
"preferred-install": "dist",
"autoloader-suffix": "Drupal8"
},
"extra": {
"_readme": [
"By default Drupal loads the autoloader from ./vendor/autoload.php.",
"To change the autoloader you can edit ./autoload.php."
],
"merge-plugin": {
"include": [
"core/composer.json"
],
"recurse": false,
"replace": false,
"merge-extra": false
}
},
"autoload": {
"psr-4": {
"Drupal\\Core\\Composer\\": "core/lib/Drupal/Core/Composer"
}
},
"scripts": {
"pre-autoload-dump": "Drupal\\Core\\Composer\\Composer::preAutoloadDump",
"post-autoload-dump": "Drupal\\Core\\Composer\\Composer::ensureHtaccess",
"post-package-install": "Drupal\\Core\\Composer\\Composer::vendorTestCodeCleanup",
"post-package-update": "Drupal\\Core\\Composer\\Composer::vendorTestCodeCleanup"
},
}
Ich wurde verwendet, um drush upc
Drupal zu aktualisieren, aber dadurch wurden meine Datei composer.json und das Herstellerverzeichnis überschrieben. Infolgedessen sollte ich composer update
alle Male ausführen , um den Inhalt des Herstellerverzeichnisses zu aktualisieren .
Mit Composer zum Aktualisieren von Drupal kann ich jetzt auch die von mir verwendeten Module herunterladen / aktualisieren.
Die von mir verwendete Datei composer.json ist die folgende.
{
"name": "drupal/drupal",
"description": "Drupal is an open source content management platform powering millions of websites and applications.",
"type": "project",
"license": "GPL-2.0+",
"require": {
"composer/installers": "^1.0.21",
"wikimedia/composer-merge-plugin": "~1.3",
"drupal/core": "~8.1",
"drupal/imagick": "8.1.*@dev",
"drupal/mollom": "^8.1",
"drupal/honeypot": "^8.1"
},
"minimum-stability": "dev",
"prefer-stable": true,
"config": {
"preferred-install": "dist",
"autoloader-suffix": "Drupal8"
},
"extra": {
"_readme": [
"By default Drupal loads the autoloader from ./vendor/autoload.php.",
"To change the autoloader you can edit ./autoload.php."
],
"merge-plugin": {
"include": [
"core/composer.json"
],
"recurse": false,
"replace": false,
"merge-extra": false
}
},
"autoload": {
"psr-4": {
"Drupal\\Core\\Composer\\": "core/lib/Drupal/Core/Composer"
}
},
"scripts": {
"pre-autoload-dump": "Drupal\\Core\\Composer\\Composer::preAutoloadDump",
"post-autoload-dump": "Drupal\\Core\\Composer\\Composer::ensureHtaccess",
"post-package-install": "Drupal\\Core\\Composer\\Composer::vendorTestCodeCleanup",
"post-package-update": "Drupal\\Core\\Composer\\Composer::vendorTestCodeCleanup"
},
"repositories": {
"drupal": {
"type": "composer",
"url": "https://packagist.drupal-composer.org"
}
}
}
Abgesehen davon, dass ich diese Zeile wie gesagt verschoben habe, habe ich auch die folgenden Befehle ausgeführt.
composer config repositories.drupal composer https://packagist.drupal-composer.org
composer require drupal/honeypot
composer require drupal/mollom
composer require drupal/imagick 8.1.*@dev
Mit dem ersten kann ich Drupal-Module anfordern und aktualisieren.
Das letzte Mal, als ich es versuchte, befand sich das offizielle Drupal-Repository noch im Alpha-Stadium und es gab mir Probleme mit Modulen, die sich als Composer-Pakete deklarierten, aber den Pakettyp (dh das Drupal-Modul) nicht festlegten. Ich hoffe, sie haben das Problem jetzt behoben. Für das Drupal Packager-Repository sind die folgenden Befehle zu verwenden.
composer config repositories.drupal composer https://packages.drupal.org/8
composer require drupal/honeypot
composer require drupal/mollom
composer require drupal/imagick 1.*@dev
Wenn Sie bereits https://packagist.drupal-composer.org verwendet haben und durch die offizielle Packagist-Site ersetzen möchten, müssen Sie den ersten Befehl durch ersetzen. Dies composer config repositories.0 composer https://packages.drupal.org/8
funktioniert, wenn Sie keine anderen Repositorys haben Verwenden von packages.drupal.org .
Beachten Sie auch, dass packagist.drupal-composer.org voraussichtlich im Januar 2017 veraltet sein wird (oder wenn das offizielle Paket-Repository von Drupal.org fertig ist) .
drush up drupal
. Ich denke, dies könnte Ihre composer.json tho (und andere Dateien) überschreiben. Sichern Sie sie also und setzen Sie sie bei Bedarf zurück. Nach dieser Verwendungcomposer update
und Sie sollten