Anwenden von Patches
Sie können Patches mit einer der folgenden Methoden anwenden:
Verfasser
So wenden Sie einen benutzerdefinierten Patch mit Composer an:
-
Öffnen Sie die Befehlszeilenanwendung und navigieren Sie zum Projektverzeichnis.
-
Fügen Sie das Plug-in
cweagans/composer-patches
zur Dateicomposer.json
hinzu.code language-bash composer require cweagans/composer-patches
-
Bearbeiten Sie die Datei
composer.json
und fügen Sie den folgenden Abschnitt hinzu, um Folgendes anzugeben:- Modul: "magento/module-payment"
- Titel: "MAGETWO-56934: Checkout-Seite friert bei der Bestellung mit Authorize.net mit ungültiger Kreditkarte ein"
- Pfad zum Patch: "patches/composer/github-issue-6474.diff"
Beispiel:
code language-json "extra": { "composer-exit-on-patch-failure": true, "patches": { "magento/module-payment": { "MAGETWO-56934: Checkout page freezes when ordering with Authorize.net with invalid credit card": "patches/composer/github-issue-6474.diff" } } }
Wenn ein Patch mehrere Module betrifft, müssen Sie mehrere Patch-Dateien erstellen, die auf mehrere Module abzielen.
-
Wenden Sie den Patch an. Verwenden Sie die Option
-v
nur, wenn Sie Debugging-Informationen anzeigen möchten.code language-bash composer -v install
-
Aktualisieren Sie die Datei "
composer.lock
". Die Sperrdatei verfolgt, welche Patches auf jedes Composer-Paket in einem Objekt angewendet wurden.code language-bash composer update --lock
Befehlszeile
So wenden Sie Patches über die Befehlszeile an:
-
Laden Sie die lokale Datei mithilfe von FTP, SFTP, SSH oder Ihrer normalen Übertragungsmethode in das Verzeichnis
<Magento_root>
auf dem Server hoch. -
Melden Sie sich beim Server als Admin-Benutzer an und überprüfen Sie, ob sich die Datei im richtigen Verzeichnis befindet.
-
Führen Sie in der Befehlszeilenschnittstelle die folgenden Befehle entsprechend der Patch-Erweiterung aus:
code language-bash patch < patch_file_name.patch
Der Befehl geht davon aus, dass sich die zu patchierende Datei relativ zur Patch-Datei befindet.
note note NOTE Wenn die Befehlszeile " File to patch:
" anzeigt, bedeutet dies, dass die gewünschte Datei nicht gefunden werden kann, selbst wenn der Pfad richtig erscheint. In dem im Befehlszeilen-Terminal angezeigten Feld zeigt die erste Zeile die zu patchierende Datei an. Kopieren Sie den Dateipfad, fügen Sie ihn in die EingabeaufforderungFile to patch:
ein und drücken Sie aufEnter
. Der Patch sollte abgeschlossen sein. -
Damit die Änderungen übernommen werden, aktualisieren Sie den Cache im Admin unter System > Tools > Cache-Verwaltung.
Alternativ kann der Patch lokal mit demselben Befehl angewendet, dann übernommen und normal gepusht werden.