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

カテゴリ テーマ コアバージョン 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. 関連モジュール タイトル
ユーザ 7.34 ip_ranges ログインアタック対策は?
JavaScript 7.34 PHP PHPからJavaScriptに変数値を渡したい
コンテンツの作成 7.31 CKEditor CKEditorの新規生成ダイアログ内の初期値の変更
サイトの構築 7.31 Views ブロックViewsの絞り込みが表示されない
言語 7.28 vim vimで全角が化けてしまう
GoogleMaps 7.28 Javascript IE9でGoogle Map APIを利用した住所情報所得がうまくゆかない
アップデート 7.28 Views Pagerが表示されなくなった
アップデート 7.28 DisableMessages モジュールのアップデートガイダンスを非表示にしたい
ユーザの管理 7.27 PHP 新規ユーザーの追加ができない
サイトの構築 7.27 Context block ページ別、カテゴリ別等でブロックの表示有無を簡単にするには
チューニング 7.26 PHP DrupalはNginxで動く?
排他 7.26 lock Viewsモジュールの設定ページのような排他機能
コンテンツの作成 7.26 PHP ノード内の一部(フィールド)を変更する
テーマ 7.23 hook ページや状況によってテーマを切り替える
ユーザ 7.23 User 長い投稿者名の表示が切れる
サイトの環境設定 7.23 Image Style 画像スタイルの使い方(Crop)
サイトの構築 7.23 Conditional fields ノード編集フォームを動的にしたい
コンテンツの作成 7.23 maxlength テキストフィールドの最大長のチェック&カウントダウン
ユーザ 7.23 PHP user_load_multiple()の復帰値
ブロック 7.23 伸縮するfieldsetブロックを追加したい

ページ