Я використовую Magento 2.1.6 і хочу застосувати виправлення CE-MAGETWO-67805.patch
.
Як я можу застосувати * .patch файли?
Я використовую Magento 2.1.6 і хочу застосувати виправлення CE-MAGETWO-67805.patch
.
Як я можу застосувати * .patch файли?
Відповіді:
Традиційні
Можна використовувати традиційний метод:
git apply MAGEPatch-20181106.patch
або
patch -p1 < MDVA-14172_EE_2.2.6_COMPOSER_v1.patch
Композитор
Або щоб вирішити ту саму ситуацію, коли файли зафіксовані в каталозі постачальників, тут є хороша стаття: http://jamescowie.me/blog/2016/12/Composer-Magento-Patches/
Ми щось подібне зробили у нашому композиторському файлі:
...
"extra": {
"magento-force": "override",
"composer-exit-on-patch-failure": true,
"patches": {
"magento/module-cache-invalidate": {
"GH 8815: Varnish purge requests can overrun size limit": "patches/composer/github-issue-8815.patch"
},
}
}
...
У нашому Magento root є каталог патчів / композиторів, де ми посилаємось на них, а в розділі "Додатки / патчі" ми розповідаємо, який модуль Magento виправити.
За іронією долі я знайшов цю посаду, коли дивився, як це робиться лише для того, щоб знайти наше рішення вже на місці нашого початкового постачальника.
Якщо у вашому оточенні встановлено git, просто скопіюйте наступну копію виправлення на кореневій папці magento.
Потім використовуйте:
$ git apply MAGETWO-67805-2017-05-17-03-04-03.patch
Якщо хтось робить це через Composer, є безкоштовний модуль, ви можете встановити його, що дозволяє встановлювати виправлення із кліпу.
magento@ce87c6cc1cdf /home/magento/htdocs/$ php bin/magento patch:list
Magento Version: 2.3.0
PRODSECBUG-2198 - This patch provides protection against the SQL injection vulnerability described under PRODSECBUG-2198
More info can be found here: https://www.magentocommerce.com/products/downloads/magento/#download2288
magento@ce87c6cc1cdf /home/magento/htdocs/$ php bin/magento patch:add --patch=PRODSECBUG-2198
Patch: PRODSECBUG-2198
Message: PRODSECBUG-2198 - Added via Zero1_Patches
Magento Version: 2.3.0
SUCCESS!
The patch has been added to you composer.json
You can now run: "composer install" to apply the patch.
magento@ce87c6cc1cdf /home/magento/htdocs/$
Я використовую його на Mdoq , але його можна використовувати будь-де.
Існує хороший блог на ньому тут
Завантажити в патч - файл і помістіть його в кореневий каталог в Magento
Встановіть режим розробника за допомогою команди:
php bin/magento deploy:mode:set developer
Застосувати виправлення за допомогою команди:
$ git apply CE-MAGETWO-93036-2018-07-02-07-06-53.patch
Можливі попередження та помилки :
попередження: постачальник / магент / модуль-електронна пошта / Модель / FileName.php має тип 100755, очікується 100644
Вищевказані кошти попередження про те , що permissions
в FileName.php є 755
хоча очікуваний permissions
є 644
.
Якщо ви застосуєте файл патча двічі, ви отримаєте повідомлення про помилку, подібне до:
помилка: помилка виправлення: постачальник / magento / модуль-електронна пошта / Модель / AbstractTemplate.php: 534
помилка: постачальник / magento / модуль-електронна пошта / Модель / AbstractTemplate.php: патч не застосовується
Добре, щоб отримати вищезгадану помилку чи попередження.
Ваш патч все ще успішно застосовується . Насолоджуйтесь;)
Переконайтесь, що ваш магазин Magento знаходиться developer mode
php bin/magento deploy:mode:set developer
Завантажте патч безпеки
git apply MAGETWO-67805-2017-05-17-03-04-03.patch
Після цього просто запустіть команду нижче, щоб застосувати патч
php bin/magento setup:upgrade