パッチの適用

パッチは、次のいずれかの方法で適用できます。

TIP
企業規模でのAdobe Commerceの一元的なパッチ適用については、 ベストプラクティスを参照してください。

コンポーザー

IMPORTANT
公式の品質パッチを適用するには、Quality Patches Tool を使用します。 カスタムパッチをデプロイする前に、必ず包括的なテストを実施してください。

Composer を使用してカスタム パッチを適用するには:

  1. コマンドラインアプリケーションを開き、プロジェクトディレクトリに移動します。

  2. composer.json ファイルに cweagans/composer-patches プラグインを追加します。

    code language-bash
    composer require cweagans/composer-patches
    
  3. composer.json ファイルを編集し、次のセクションを追加して指定します。

    • Module: "magento/module-payment"
    • タイトル: "MAGETWO-56934:無効なクレジットカードでAuthorize.netを注文すると、チェックアウトページがフリーズする"
    • パッチのパス: "patches/composer/github-issue-6474.diff"

    例:

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

    パッチが複数のモジュールに影響を与える場合は、複数のモジュールをターゲットとする複数のパッチファイルを作成する必要があります。

  4. パッチを適用します。 デバッグ情報を表示する場合にのみ、「-v」オプションを使用します。

    code language-bash
    composer -v install
    
  5. composer.lock ファイルを更新します。 ロック ファイルは、オブジェクト内の各 Composer パッケージに適用されたパッチを追跡します。

    code language-bash
    composer update --lock
    

コマンドライン

コマンドラインからパッチを適用するには:

  1. FTP、SFTP、SSH、または通常の転送方法を使用して、ローカルファイルをサーバー上の <Magento_root> ディレクトリにアップロードします。

  2. admin ユーザーとしてサーバーにログインし、ファイルが正しいディレクトリにあることを確認します。

  3. コマンドラインインターフェイスで、パッチ拡張機能に従って次のコマンドを実行します。

    code language-bash
    patch < patch_file_name.patch
    

    このコマンドは、パッチを適用するファイルがパッチ ファイルを基準とした相対パスにあることを前提としています。

    note note
    NOTE
    コマンドラインに「File to patch:」と表示されている場合は、パスが正しく見えても、目的のファイルを見つけることができないことを意味します。 コマンドラインターミナルに表示されるボックスの最初の行は、パッチを適用するファイルを示します。 ファイルパスをコピーして File to patch: プロンプトに貼り付け、Enter キーを押すと、パッチが完了します。
  4. 変更を反映するには、管理画面の システム/ツール/キャッシュ管理 でキャッシュを更新します。

    または、同じコマンドを使用してパッチをローカルに適用し、正常にコミットおよびプッシュすることもできます。

recommendation-more-help
83a60e0e-8849-4685-a8cd-c129ecd795ea