2014年2月20日木曜日

PhpStormでサーバにデプロイする方法

RisolutoのコミッタだからPhpStormが使えるんだよ!


PHPのIDEである「PhpStorm」をOpen Source Project Licenseで使わせていただけることになったよ!」というエントリで書いたとおり、Risoutoでは「Open Source Project License」の元でPhpStormを使わせていただいている。

まだ使いこなせてる……って訳じゃないんだけども、分かる範囲で少しずついろいろな機能をお試ししている。そのお試ししている機能の中で「あ、これは便利だな」と思ったのが、なにげにデプロイ関係の機能だったりする。

いや、今やどのIDE使っても同じことできるんだろうけど、今までテキストエディタを使った開発をやってたこともありその便利さに感動すら覚えているのが今のボク。

とりあえず、いつもその方法を忘れてしまうので、ここにメモっておく。

まずは事前準備


デプロイできるようにするためには事前準備が必要。というわけで、メニューの「Tools > Deployment」を開く。すると、その中に「Configuration」と「Options」という項目が
ある。ここで必要な設定を行う。


Configuration


設定画面が表示される。このエントリ中のキャプチャではすでに設定が2つほど追加されている(*1)けども、最初は何もないはず。なので、左ペイン左上にある「+」のボタンをクリック。


上記のようなダイアログが表示される。

「Name」のところはその設定を識別するための名前を入力する。要は見て分かるようにするためのものなので、何でもいいから適当に入力する。

「Type」はデプロイ時に接続する方法の指定……といったところだろうか。「FTP」、「FTPS」、「SFTP」、「Local on mounted folder」、「In place」のいずれかを選択する。

「FTP」、「SFTP」、「SFTP」については、リモートのサーバにデプロイする場合に使用する。「Local〜」はPhpStormを動かしているマシンと同一マシンの他ディレクトリにデプロイする場合、「In place」はソースコードの置き場所=デプロイ先の時に選択する感じだろうか(*2)。

ボクの場合は「Mac OS X MavericksにApacheとPHPをインストールしてWebアプリの開発環境を作ってみる」のエントリで構築した環境を開発環境としているから、そこにデプロイしたい。ソースコードは開発環境のドキュメントルートとかとは別なところにおいてあるので、「Local on mounted folder」を選択した。

選択したら「OK」をクリック。すると左ペインに今追加したものが表示されているはず。詳細の設定ができるようになっているはずだ。

Connectionタブ



文字通り、接続に関する設定。「FTP」、「FTPS」、「SFTP」を選択すると、リモートサーバへの接続情報が入力できるようになる。ちなみに「SFTP」については、公開鍵認証による接続も可能。安心だね!

さて、「Local〜」の場合なんだけども、設定項目は上記のキャプチャの通り2つしかない。シンプル。

「Folder」のところでデプロイ先のディレクトリを指定する。「Web server root URL」ではサーバのURLを指定する。

Mappingsタブ



gitのリポジトリなどのデプロイ元とデプロイ先のパスマッピングを行うことができる。

ボクの場合は、デプロイ元のディレクトリ構成をそのままデプロイすればOKだったので、特に何もせず。必要なら複雑なマッピング設定もできるっぽい。

Exclude Pathsタブ



除外設定などを行う。ボクの場合は特に必要性を感じなかったので設定してないけど、デプロイ対象から外したい何かがあるならここで設定すればよさげ。

Options

デプロイに関する細かい設定を行うのがこちら。


特に覚えておいた方がよさげな部分だけピックアップ。

「Exclude items by name」では除外したいファイルを指定できる。「;」で区切り、「*」と「?」はワイルドカードとして解釈される。主にVCS関連のファイルなどデプロイしてもしょうがないものを列挙する感じ。

「Delete target items when source ones do not exist(when transferring from Project view or Remote Host view)」はチェックを付けるとデプロイ元には無いブツがデプロイ先にあったときに削除するようになる。

「Create empty directories」はチェックを付けると空ディレクトリも作ってくれるようになる。

「Upload changed files automatically to the default server」はファイル変更時の自動デプロイに関する指定ができる。「Always」(変更時すぐにデプロイ)、「On explicit save action」(保存したときにデプロイ)、「Never」(自動的にデプロイしない)のいずれかを選択する。

他にもいろいろ設定できるけど、個人的に気になるのはこのあたり。

デプロイしてみよう!


設定ができればあとはデプロイするだけ!

「Options」の「Upload changed files automatically to the default server」で「Always」(変更時すぐにデプロイ)か「On explicit save action」(保存したときにデプロイ)のいずれかを選択した場合は、ファイルが変更されたり保存したタイミングで勝手にデプロイされる。


手動でデプロイしたいときは、メイン画面(?)の左ペイン「Project」にてデプロイしたいディレクトリやファイルの上でコンテキストメニューを開き、その中の「Upload to〜」という項目(*3)を選択するとデプロイされる。


*1:すでに開発に使っているので
*2:正直なところ「In place」だけは使いどころがイマイチ分かってない
*3:ボクの場合は「localhost」という名前で設定を作ってるので「Upload to localhost」となっている

0 件のコメント:

コメントを投稿