Jakiś czas temu zainstalowałem Magento 2 za pośrednictwem meta-pakietu kompozytora . Jest to również znane jako instalacja integratora.
Wygląda na to, że zainstalował Magento CE 2.0.1. Czy istnieje sposób na uaktualnienie tej wersji do najnowszej wersji Magento CE 2.0.3? Zdaję sobie sprawę, że mogę zaktualizować composer.json
tak, aby tutaj 2.0.1
"require": {
"magento/product-community-edition": "2.0.1",
staje się
"require": {
"magento/product-community-edition": "2.0.3",
To jednak pomijałoby pliki takie jak
app/etc/NonComposerComponentRegistration.php
Jak również wszelkie aktualizacje samego pliku composer.json.
Czy można zaktualizować wersję Magento 2 zainstalowaną z pakietem meta? A może nie jest to cel meta pakietów?
repo.magento.com
jest zablokowany. Poczekaj na ogłoszenie. Krok 1, uruchomcomposer require <string> <version> --noupdate
(sprawdź składnię). Krok 2, uruchomcomposer update
. Krok 3, uruchombin/magento setup:upgrade
vendor
?Odpowiedzi:
Właśnie dostosowałem swój
composer.json
plik do używania 2.0.4 zamiast 2.0.2 (ręcznie), a następnie uruchomiłemcomposer update
iphp bin/magento setup:upgrade
. Pracował tutaj bez zarzutu.Wierzę, że pakiet instalacyjny Magento Composer obsługuje instalację plików w
app/
folderach itp., Co także aktualizuje rzeczy podczas aktualizacji. Ale ta ostatnia część jest tylko założeniem, ponieważ nie musiałem jej debugować.źródło
app/etc/NonComposerComponentRegistration.php
i potwierdzić rok praw autorskichObecnie nie mogę go przetestować, ponieważ repozytorium kompozytora Connect jest uszkodzone, ale mam nadzieję, że nadal będzie przydatne.
To
composer.json
mój własny projekt https://github.com/Cotya/DashboardProject/blob/6ce3f307c53a3fb54c94d8a7bd70b306036da928/composer.jsonOstatnio zmieniłem na,
"magento/product-community-edition": "^2.0"
aby móc aktualizować za pomocą prostegocomposer update --with-dependencies magento/product-community-edition
polecenia. Zawsze wyraźnie nazywam to, co należy zaktualizować, aby nie pomieszać go z innymi pakietami, których potrzebuję oprócz magento, ale dlatego potrzebuję--with-dependencies
argumentu.Bardzo ważną częścią tego przepływu pracy jest zatwierdzanie
composer.lock
pliku po każdej (pomyślnie przetestowanej) aktualizacji. Jak widzisz, różnica pliku blokady jest zbyt duża dla GitHub, jest to wynik wszystkich aktualizacji zależności i powód, dla którego nie powinieneś mieszać aktualizacji Magento z aktualizacją czegoś innego.Jak widać, zdefiniowałem pliki dla
NonComposerComponentRegistration
siebie, możesz mieć ich wiele. Minusem mojego podejścia jest to, że kiedy zachodzą zmiany w projekciecomposer.json
, musisz je zastosować ręcznie.Gdy zapytałeś o aktualizację
NonComposerComponentRegistration
pliku, nadal istnieje „kilka” plików, które są kopiowane z dostawcy do katalogu docelowego, dlatego nazwałem go jawnie,build
aby nie mieszać własnych z wygenerowanymi / skopiowanymi plikami.Mam nadzieję, że to pomaga, nawet jeśli jest to dość wyjątkowa konfiguracja M2.
źródło