開発環境のファイル変更を本番環境にパッチでデプロイする方法(画像含まず)

カテゴリ テーマ コアバージョン 8.9.x 関連モジュール patch パッチ

開発環境における CustomモジュールやCustomテーマの変更を 本番環境にデプロイするには以下のように パッチ(patch)で行うのが 環境依存が少なく巻き戻しもできるので便利です。

手順

1. パッチ作成用のディレクトリを作成する。
1.1. drupal 8 の場合
作業ディレクトリ(ドキュメントルートに対応)
 |
 +ー a(変更前)
   +ー modules
   | +ー custom
   |   +ー 変更があったCustomモジュールのディレクトリ以下すべて
   +ー themes
     +ー custom
       +ー 変更があったCustomテーマのディレクトリ以下すべて
 +ー b(変更後)
   +ー sites
     +ー modules
     | +ー custom
     |   +ー 変更があったCustomモジュールのディレクトリ以下すべて
     +ー themes
       +ー custom
         +ー 変更があったCustomテーマのディレクトリ以下すべて
※ ディレクトリ構成は1例です。実際の構造に合わせてください。
1.2. drupal 7 の場合
作業ディレクトリ(ドキュメントルートに対応)
 |
 +ー a(変更前)
   +ー sites
     +ー all
       +ー modules
       | +ー custom
       |   +ー 変更があったCustomモジュールのディレクトリ以下すべて
       +ー themes
         +ー custom
           +ー 変更があったCustomテーマのディレクトリ以下すべて
 +ー b(変更後)
   +ー sites
    +ー all
     +ー modules
     | +ー custom
     | +ー 変更があったCustomモジュールのディレクトリ以下すべて
     +ー themes
      +ー custom
       +ー 変更があったCustomテーマのディレクトリ以下すべて
※ ディレクトリ構成は1例です。実際の構造に合わせてください。
2. パッチ(patch)ファイルを作成する。
$ cd /〜/作業ディレクトリ
$ diff -uprNwB a b > パッチファイル名.patch

 

パッチ(patch)を本番環境に反映するには以下のようにします。

1. パッチファイルを本番サーバーにアップロードする。
2. パッチを実施する。
$ cd /〜/ドキュメントルートディレクトリ
$ patch -p1 < アップロードしたパッチファイル

OTHER FAQ

Drupal開発・運用の疑問/質問の答えはここに

無料ユーザー登録すると質問できます。

カテゴリ Core Ver. 関連モジュール降順で並び替える タイトル
JavaScript 8.5.x PHP Commerce決済モジュール設定をJavaScriptにデータに渡す方法
コンテンツの作成 8.4x PhpSpreadsheet Excelを読み書きする方法
サイトの構築 7.19 Plesk Pleskでdrupal7(プライベートファイルシステム)を使う場合の注意点
Proxy 7.59 Proxy Apache settings.php リバースプロキシ(Apache)+バックグランドWeb(Drupal 7 )でログインセッションを維持する方法
SSH 7.50 ProxyCommand SSH IP制限を1コマンドで通過する
ユーザ 7.44 Quickbar 会員の種別(役割)別にメニューを設けたい
ユーザ 7.22 Realname ユーザーIDではなくニックネーム等を表示したい
Google 7.38 robots.txt Google Search Console Teamから「CSS および JS ファイルに Googlebot がアクセスできません」
サイトの構築 7.41 Rules Paygent モジュールについて
サイトの環境設定 7.15 Secure Pages Secure Pagesが急に機能しなくなった
パフォーマンス 7.34 Server お金をかけないで冗長化するには
SFTP 8.4x SFTP RSA SFTP(RSA)でファイル転送(送信)する方法
サイトの環境設定 8.6.x Simhony Yaml yamlファイルを読み込む方法
ニュースレター 7.34 Simple news Simplenewsで追加顧客(リスト)だけにニュースレターを配信する方法
メール 7.50 Smtp smtpでGmailアカウントを使いたい
Initial 8.4x Subscriber hook_init() 〜 drupal_goto() を drupal8でやる方法
ログイン 8.7.x System ユーザー アカウントロックの範囲設定
フォーム 7.15 system mail()での送信が失敗する
タクソノミー 7.15 Taxonomy manager タームを他のボキャブラリ配下に移動したい
タクソノミー 7.15 Taxonomy manager タクソノミーを効率よく管理したい

ページ