Bagaimana cara menerapkan tambalan Magento 2?


12

Saya menggunakan Magento 2.1.6 dan saya ingin menerapkan tambalan CE-MAGETWO-67805.patch.

Bagaimana saya bisa menerapkan file * .patch?


bisa tolong bantu saya tentang cara menemukan tambalan yang diperlukan untuk menginstal untuk versi Magento yang diberikan. Apakah ada alat yang Anda gunakan untuk menemukannya? atau kita harus mengunjungi magento.com untuk mendapatkan informasi tambalan?
Kalyan Chakravarthi V

Saya sedang mencari praktik terbaik untuk menerapkan tambalan ini pada instalasi Magento 2 Composer. Dalam Artikel ini saya memposting bagaimana kami Menambal Sumber Magento. medium.com/@LarsRoettig/…
Lars Roettig

Jawaban:


12

Tradisional

Anda dapat menggunakan metode tradisional:

git apply MAGEPatch-20181106.patch

atau

patch -p1 < MDVA-14172_EE_2.2.6_COMPOSER_v1.patch    

Komposer

Atau untuk mengatasi situasi yang sama dengan file yang ditambal di direktori vendor, ada artikel bagus di sini: http://jamescowie.me/blog/2016/12/Composer-Magento-Patches/

Kami melakukan sesuatu yang serupa di file komposer kami:

...
   "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"
            },
        }
    }
...

Di root Magento kami, kami memiliki direktori tambalan / komposer yang menjadi acuan kami dan di bagian tambalan / tambalan, kami memberi tahu modul Magento mana yang akan ditambal.

Ironisnya, saya menemukan posting ini ketika melihat bagaimana ini dilakukan hanya untuk menemukan solusi kami sudah ada di tempat oleh vendor awal kami.


5

Jika Anda telah menginstal git di lingkungan Anda, cukup gunakan salin tambalan berikut pada folder root magento Anda.

Kemudian gunakan:

$ git apply MAGETWO-67805-2017-05-17-03-04-03.patch

1
bagaimana jika seseorang tidak menyimpan folder vendor sebagai bagian dari repositori git? Bukankah ini hanya menambal file inti secara langsung?
dchayka

2

Jika ada yang melakukan ini melalui Komposer ada modul gratis Anda dapat menginstalnya memungkinkan Anda untuk menginstal tambalan dari cli.

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/$

Saya menggunakannya di Mdoq , tetapi bisa digunakan di mana saja.
Ada posting blog yang bagus di sini


Saya mencoba untuk mengirim email ke perusahaan tentang menambahkan tambalan tetapi email mereka rusak (support@mdoq.io). Sepertinya mereka belum menambahkan tambalan baru selama sekitar satu tahun. Ini tampaknya merupakan proyek mati.
njm5785

@ njm5785 bukan proyek mati, permintaan maaf kami melewatkan email Anda. Bagaimana saya bisa membantu?
Adam

1
  • Men-download yang file patch dan menempatkannya ke dalam direktori root dari Magento

  • Tetapkan mode pengembang dengan menggunakan perintah:

    php bin/magento deploy:mode:set developer

  • Terapkan tambalan dengan menggunakan perintah:

    $ git apply CE-MAGETWO-93036-2018-07-02-07-06-53.patch

  • Kemungkinan peringatan dan kesalahan Anda bisa mendapatkan adalah:

peringatan: vendor / magento / module-email / Model / FileName.php memiliki tipe 100755, diharapkan 100644

Sarana peringatan di atas bahwa permissionsdari FileName.php yang 755meskipun diharapkan permissionsadalah 644.

Jika Anda menerapkan file tambalan dua kali Anda diharapkan mendapatkan pesan kesalahan yang mirip dengan:

error: patch gagal: vendor / magento / module-email / Model / AbstractTemplate.php: 534

error: vendor / magento / module-email / Model / AbstractTemplate.php: patch tidak berlaku

Tidak masalah untuk mendapatkan kesalahan atau peringatan di atas.

Tambalan Anda masih berhasil diterapkan . Nikmati ;)


0
  1. Pastikan toko Magento Anda ada di developer mode

    php bin/magento deploy:mode:set developer

  2. Unduh patch keamanan

    git apply MAGETWO-67805-2017-05-17-03-04-03.patch

  3. Setelah itu jalankan perintah di bawah ini untuk menerapkan tambalan

    php bin/magento setup:upgrade


Apakah Anda tahu, bagaimana cara menghapus terakhir menerapkan tambalan?
Dhaduk Mitesh
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.