How to update Magento2 using composer
Edit the composer.json file on root folder and change the version of magento in line 5:
"version": "2.0.1",
and under "require"
"require": {
"magento/product-community-edition": "2.0.1",
Now run:
composer update
Then run:
php bin/magento setup:upgrade
And finally re-deploy the static files, which for me is this command:
php bin/magento setup:static-content:deploy de_DE en_US
That worked for me.
Updating/Upgrading to Magento 2.0.5 (via composer
)
php bin/magento maintenance:enable
composer require magento/product-community-edition 2.0.5 --no-update
composer update
rm -rf var/di var/generation
php bin/magento cache:flush
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento indexer:reindex
php bin/magento maintenance:disable
After upgrade, check your Magento version with the following command:
php bin/magento --version
Upgrading to Magento 2.3.x
The above commands work fine while upgrading Magento to 2.2.x.
To upgrade to Magento 2.3.x, you need to follow some more steps.
Here's the step-by-step guide to upgrade Magento to 2.3.x:
Enable maintenance mode
php bin/magento maintenance:enable
Specify Magento packages
composer require magento/product-community-edition=2.3.0 --no-update
Specify additional packages
composer require --dev phpunit/phpunit:~6.2.0 friendsofphp/php-cs-fixer:~2.10.1 lusitanian/oauth:~0.8.10 pdepend/pdepend:2.5.2 sebastian/phpcpd:~3.0.0 squizlabs/php_codesniffer:3.2.2 --no-update
Remove unused packages
composer remove --dev sjparkinson/static-review fabpot/php-cs-fixer --no-update
Update autoload
Open composer.json
and edit the "autoload": "psr-4"
section to include "Zend\\Mvc\\Controller\\": "setup/src/Zend/Mvc/Controller/"
:
"autoload": {
"psr-4": {
"Magento\\Framework\\": "lib/internal/Magento/Framework/",
"Magento\\Setup\\": "setup/src/Magento/Setup/",
"Magento\\": "app/code/Magento/",
"Zend\\Mvc\\Controller\\": "setup/src/Zend/Mvc/Controller/"
},
...
}
Apply updates
composer update
Clean the Magento cache
php bin/magento cache:clean
Manually clear caches and generated content
Clear the var
and generated
subdirectories:
rm -rf <Magento install dir>/var/cache/*
rm -rf <Magento install dir>/var/page_cache/*
rm -rf <Magento install dir>/generated/code/*
If you use a cache storage other than the filesystem, such as Redis or Memcached, you must manually clear the cache there too.
Update the database schema and data
php bin/magento setup:upgrade
Disable maintenance mode
php bin/magento maintenance:disable
Finally, check your Magento version
php bin/magento --version
Read more: https://devdocs.magento.com/guides/v2.3/comp-mgr/cli/cli-upgrade.html
When upgrading through composer, you can choose the version of which you need to upgrade via a composer upgrade. For example:
composer require magento/product-community-edition 2.1.2 --no-update
The same command can be run if using Enterprise. For example:
composer require magento/product-enterprise-edition 2.0.6 --no-update
After running the relevant command, run
composer update
When composer has finished, upgrade your database by running the command:
php bin/magento setup:upgrade
As ever, make a backup of your database and use a versioning tool such as git to protect yourself from the upgrade not going to plan.