【実践FuelPHP】gitで管理するFuelPHPプロジェクトをつくろう
FuelPHPを業務で使う上で、必要となってくるのがgitでの管理。
ウェブアプリといえど、ソース管理をしないと怖い。
ということで、さっくりとgitでFuelPHPのプロジェクトを管理する手法をメモしておきます。
多分、他の人もこんなかんじで管理してるんでしょ?って方法です。
何番煎じ位な感じなので、別にこの方法じゃなくても管理できるはずですが、とりあえず・・・
FuelPHPのファイル群をsubmodulesとして管理する
いろいろ考えた挙句、gitでソースコードをそのまま引っ張ってくることが便利というところに行き着きました。
が、メンテナンス性を考えると、そのままファイル郡をsubmodule化するほうが楽かと。
バージョンの問題等でどうしても使わなきゃいけない以外は最新版を使えば問題なさそうですし。
まずは、FuelPHPのgitリポジトリから最新のものを取得します。
git clone git://github.com/fuel/fuel.git sample_project
sample_projectは好きなプロジェクト名をつけます。プロジェクト名に合わせたディレクトリが作成されます。
その後、このプロジェクトを別の空プロジェクトに登録するため、現在のルートのリポジトリと要らないファイル群を削除します。
cd sample_project rm -rf .git .gitmodules rm -rf *.md
サブモジュールとして登録するパッケージは一旦邪魔なので削除する
rm -rf docs fuel/core fuel/packages
管理する今回管理するプロジェクトのgitリポジトリを作成します。
git init
さっき削除したサブモジュールパッケージを、ここで登録します。
git submodule add git://github.com/fuel/core.git fuel/core git submodule add git://github.com/fuel/oil.git fuel/packages/oil git submodule add git://github.com/fuel/auth.git fuel/packages/auth git submodule add git://github.com/fuel/parser.git fuel/packages/parser git submodule add git://github.com/fuel/orm.git fuel/packages/orm git submodule add git://github.com/fuel/email.git fuel/packages/email
この方法で同じようにすることで、他のgithubのパッケージを登録することができます。
続いて、他のパッケージをgit file郡としてcommitします。
git add . git commit -m "first"
これで、準備が整いました。
他の人は、今回の追加したFuelPHPファイル群をgit cloneするだけで使用することができます。
最後に設定も併せてしましょう
というわけで、このままだとトップページがエラーで表示されません。
ログファイル系の書き込みができないと言われるので、フォルダの設定を行うコマンドを使用しましょう。
oil refine install
さらに、インストールしている状態では、Timezone系のエラーが出ることがあります。
/fuel/app/config/config.php の下記箇所をコメントアウトして修正します。
// 'default_timezone' = null, 'default_timezone' = 'Asia/Tokyo',
せっかくので文字コードも修正します。
//'encoding' = 'UTF-8', 'encoding' = 'UTF-8',
このファイルをcommitしてpullすることで修正が完了します。