Is migrations support planned for Cake?
http://groups.google.com.ar/group/cake-php/browse_thread/thread/1bde4426444fda5c/
ちなみに、下記のブログで言及されていたので知りました。
Juanfgs’s Blog
Rails Migrations vs CakePHP Schemas
http://juanfgs.wordpress.com/2008/05/23/rails-migrations-vs-cakephp-schemas/
migrationあたりの経緯を書いておくと、
1)まず、CakePHPには最初migrationのようなものが標準では存在しなかった。
2)Joelmossが個人プロジェクトとして、PHPマイグレーションを作り始めた。
(CakePHP migration)
3)しかし、YAMLを使用。PEARに依存、などの仕様のため、CakePHPのコア開発チームからは非公認のままだった。
4)CakePHP 1.2 で schemaタスクが開発される。
5)Joelmossのmigrationが、YAML以外にも、PHP配列でのデータ形式に対応、PEARに非依存にする作業中。
(今、このあたり。)
というところです。で、このMLでは、"マイグレーションとスキーマシステム、どっちがいいの?"という議論が交わされています。
Dr. Tarique Sani(CheeseCakeプロジェクト主宰)は、「それはオレンジとリンゴを比べているようなもので、コンセプト自体が違うということでいいんじゃないか」と言ってまとめようとしています。
簡単に言うと、
migration: 変更情報を差分として記録してゆく
schema: その時点でのDB構造のスナップショットを記録してゆく
というもので、migrationが嫌い(schema万歳)派の、「DB構造を変えるたびにいちいちコードを書くのが面倒だ」という意見も分からないでもないです。特にphpMyAdminを使っている場合などは、DBの変更が快適にできてしまいますからね。phpMyAdminが変更履歴一覧みたいなものを出力してくれてもいいかもですね。
ちなみに私は今のところ、SQLyogのエンタープライズ版で満足してしまっています。
www.webyog.com
Structure Synchronization toolが便利すぎなんですよ。phpMyAdminと組み合わせると、違うホストのDB構造を数クリックでシンクロナイズできます。データのシンクロナイズも“おそらく”うまくゆくと思います。しばらく前まではPHPのトンネル用ファイルに手を加えていましたが。
このツール、最初の頃は多言語対応化について結構、口を出したり開発にちゃちゃを入れたりしていたんですが、そのうち、使える機能だけ使えばいいか、という気になって、そういう使い方をしているツールです。日本語では100%の動作を期待しなくてもいい、という人は便利に使えると思います。