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

カテゴリ テーマ コアバージョン 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. 関連モジュール タイトル降順で並び替える
コンテンツの作成 8.4x json jQueryにjsonで渡す方法
mac linux ファイル名 文字化け 8.7.x mac linux ファイル名 文字化け Macからlinuxにrsyncするとファイル名(濁点)が文字化けする場合の対応方法
フォーム 7.15 system mail()での送信が失敗する
言語 7.15 Entity Translation nodeのEntity Translation
コンテンツの作成 8.4x node node保存前に色々やる方法
アップデート 7.28 Views Pagerが表示されなくなった
アップデート 8.9.x composer patch patch を composer に 組み込む方法
サイトの構築 7.41 Rules Paygent モジュールについて
PHP-FPM 8.9.x PHP PHP-FPM 環境で .htaccess に php_value を 書いてもダメ
PhpStorm 7.50 LocalForward PhpStormから踏み台を使う
JavaScript 7.34 PHP PHPからJavaScriptに変数値を渡したい
サイトの構築 7.19 Plesk Pleskでdrupal7(プライベートファイルシステム)を使う場合の注意点
PCRE 7.50 preg_match()がおかしい
サイトの環境設定 7.15 Secure Pages Secure Pagesが急に機能しなくなった
SFTP 8.4x SFTP RSA SFTP(RSA)でファイル転送(送信)する方法
ニュースレター 7.34 Simple news Simplenewsで追加顧客(リスト)だけにニュースレターを配信する方法
メール 7.50 Smtp smtpでGmailアカウントを使いたい
SSH 7.50 ProxyCommand SSH IP制限を1コマンドで通過する
タクソノミー 7.15 Entity_Trarnslation Taxonomy TaxonomyのEntity Translation
コンテンツの作成 7.50 Expanding Textareas Textareaフォームの行サイズを自動調整するモジュール

ページ