2012年2月21日火曜日

FuelPHPってなんじゃ?(Git管理編)

以前FuelPHPのインストールと簡単なアプリの作成を行いましたが、
今回はFuelPHPを使ったアプリケーションを自分の管理するGitマスターリポジトリに登録してみたいと思います。

前回のGitlabのプロジェクト登録編では、すでにリポジトリに一度pushしました。そのように未取得の変更がマスタリポジトリ上に存在する場合はマージしてからpushする必要があります。その説明は別の機会にするとして、今回はリポジトリがまだ空の状態という想定で行います。

まずはoilコマンドで適当にプロジェクトを作成します。
oil create bookstore
cd bookstore/

oil createコマンドはFuelPHPを含めたアプリケーションひな形をGithubからcloneするので、Githubのgit管理下にあるため、まず.gitから始まるファイルを削除します。
rm -rf .git*

.gitが削除されたのでGithubリポジトリ管理外となりました。
ここで、あらためて自分のgit管理下におくため初期化を行います。
git init

また、FuelPHPのfuel/coreとfuel/packagesのみをGithubのFuelPHPのgit管理下に置き、このアプリケーションのサブモジュールとして登録します。
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

ここまで行ったらアプリケーションツリー全体を次回コミットに含めるためステージに上げます。
git add .

ここでは前回のGitlabサーバーをマスターリポジトリとするのでGitlabのユーザー情報を登録します。
git config --global user.name "miura"
git config --global user.email  "miura@cloudpack.jp"

まずローカルリポジトリにコミットします。
git commit -m 'reinitialize with submoduled'

ここで、Gitlabサーバーのgitリポジトリをoriginという名前でリポジトリ登録します。
この時点でgitサーバー側ではGitlabでプロジェクト登録してあるか、Gitlabを使用していない場合はgitのベアリポジトリを作成してある必要があります。
git remote add origin git@176.34.51.75:bookstore.git

今登録したoriginリポジトリのmasterブランチへpushします。
git push -u origin master

それでは反映しているかGitlabで確認してみます。



うまく登録されているようです。
これで、FuelPHPを利用したチーム開発もできるようになります。

今回は以上です。