netbeans で CakePHP 3 DBの設定とtmpファイルのSVN除外

プロジェクトまで作り終わったしapacheの良い感じの場所におかれているのでこれでちょっとは動くはず。
ためしにブラウザから見てみます。

http://localhost:10080/cashcurry/

プロジェクト作成直後のルートの状態
何も設定していないのでアラートが出てます。

ではアラートに従って設定してみます。

まずひとつめ

Notice (1024): Please change the value of 'Security.salt' in app/config/core.php to a salt value specific to your application [CORE\cake\libs\debugger.php, line 694]

app/config/core.php というファイルの Security.salt の設定を良い感じにしなさい的な内容です。

そういえばcakeにはbakeという機能があってなんか色々自動で設定してくれたはず。
そこで言われたとおりにやっていけばこれも自分で設定しなくていいのでは?

と思ったのでbakeしてみます。

プロジェクトのルートを右クリック > CakePHP > コマンドを実行

Bake呼び出し

とやると動き出します。
コマンドの実行の下に「Bake...」というのがありますが、これを選択しても何も起こりません。
裏でなにか起きてるのかもしれませんが、見た目的にわからないので何が起きてるのかもわかりません。

コマンドを実行するとダイアログがでます。

Bake実行ダイアログ

なんだかよくわからないので何も入れずに「実行」ボタンを押してみます。
するとコンソールになにか実行したっぽいものがでてきました。

Bake実行中のコンソール

どうやらDBの設定をするものっぽいです。

Welcome to CakePHP v1.3.13 Console
---------------------------------------------------------------
App : app
Path: D:\xampp\htdocs\cashcurry\app
---------------------------------------------------------------
Your database configuration was not found. Take a moment to create one.
---------------------------------------------------------------
Database Configuration:
---------------------------------------------------------------
Name:
[default] >

どんどん入力していけばよさそうなものなので入れていきます。
面倒なものは初期値のままで。
全部入れ終わると下の確認がでてきます。


---------------------------------------------------------------
The following database configuration will be created:
---------------------------------------------------------------
Name:         default
Driver:       mysql
Persistent:   false
Host:         localhost
User:         ひみつ
Pass:         ********
Database:     ひみつ
Table prefix: ひみつ
Encoding:     utf8
---------------------------------------------------------------
Look okay? (y/n)
[y] >

問題ないのでエンターキー。

続いて他の設定もする?と言われるので無視します。
まだ要りません。

Do you wish to add another database configuration?
[n] > n

Creating file D:\xampp\htdocs\cashcurry\app\config\database.php
Wrote `D:\xampp\htdocs\cashcurry\app\config\database.php`

どうやらdatabase用の設定ができたようです。
開いてみると、

class DATABASE_CONFIG {

var $default = array(
'driver' => 'mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'ひみつ',
'password' => 'ひみつ',
'database' => 'ひみつ',
'prefix' => 'ひみつ',
'encoding' => 'utf8'
);
}

こんなものができあがってました。

みたまんまDB設定のようです。
ではまたブラウザから見てみます。

DB設定完了後の画面

セキュリティ塩関連は変わってませんが、一番したのDB関連が変わってます。

Your database configuration file is NOT present.
Rename config/database.php.default to config/database.php

だったものが

Your database configuration file is present.

Cake is able to connect to the database.

になってます。DB設定はOKなようです。

一旦コミットしておきます。

プロジェクトルートを右クリック > Subversion > コミット

DB設定コミット前確認

とやるとダイアログがでてきます。
新規で作成された database.php 以外にもなにやらファイルがいっぱい作成されてますが、リポジトリのパスをみるとtmpフォルダ内なのでコミットしなくてよいものっぽいです。
が、毎回これがでてきてチェック外すのが面倒なのでコミット対象外にします。
パスを見ると

/trunk/app/tmp

なのでこのフォルダの下を全部対象外にします。
が、プロジェクトのツリーを見てもいません。

で、タブを「ファイル」にすると出てきます。

ファイルツリーにtmpフォルダが出る

きっとプロジェクトのフォルダとしては不要なものなのです。
ということはtmpフォルダごと消してしまっていい気がします。

tmp右クリック > Subversion > 無視

tmpフォルダを無視に入れようとするがダメ

とやろうとしましたが、何故か選択できません。
色々考えるのも面倒なので直接フォルダを開いてTortoiseSVNから除外することにします。
NetBeans上からエクスプローラを開く方法がわからないので手動で。

開いてみるとtmpフォルダは既にコミット済で下層のフォルダもコミット済でした。

エクスプローラでtmpフォルダを開いてみる

ということはtmpを消すとなにかアブナイ。
なので消すのはやめます。
フォルダは消さずに、さっきできてた余計なファイルだけ除外することにします。

ファイルを指定してSVN無視設定

NetBeans上から

対象のファイルを選択して右クリック > Subversion > 無視

にします。
「コミットから除外」と何がちがうのかわかりませんが、TortoiseSVNだと「ignore」を使っているので同様に「無視」を使っとけば大丈夫だろうということで。

SVN無視設定完了

無視状態になると文字が薄いグレーになります。
この状態で

プロジェクトのルートを右クリック > Subversion > コミット

とやると無視するファイルのあるフォルダが出てきます。
これはSVN的に無視するファイルの設定はそのフォルダに適用されるからですね。

コミット画面

ではコミット。
これで次回から余計なtmpファイルはコミットされなくなるでしょう。

そしてさっそくコミット時のコメントを入れ忘れたことに気づきました。orz

コメント