• 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

Eclipse上でPDTを使ってFuelPHPのプロジェクトをGit管理したかったので、EGit で github を使えるようにしてみました。

参考にさせていただいたサイトはこちら。
FuelPHPってなんじゃ?(Git管理編)

Eclipse、PDT、FuelPHP は既に使える状態になっているものとします。

まずはEclipseからGitを使えるように、EGit をインストールします。

Eclipse の Helpメニュー -> Install New Software でダイアログを開きます。EGitのダウンロード用URLはデフォルトで登録されているので、--All Available Sites-- の中から Collaboration -> Eclipse EGit を選択してインストールします。

インストールできたら Eclipse の Windowメニュー -> Preference でダイアログを開き、Team -> Git -> Configuration の User Settings タブで、New Entry ボタンをクリックして、user.name, user.email を設定します。

次にFuelPHPを使うプロジェクトを作成します。

   1  $ oil create contact
   2  $ cd contact

ここで気をつけなければいけないことがあります。oil create で作られたプロジェクトは、FuelPHPの github のリポジトリを clone して作られいるためGit管理になっています。その中でいくつかのディレクトリは git の submodule として登録されているのですが、通常はその中の .git はディレクトリになっているはずが、私の環境(Ubuntu12.04)ではファイルになっていて、中身は下記の用にプロジェクトルートの .git ディレクトリ配下のパスがかかれていました。

   1  $ cat fuel/core/.git
   2  gitdir: /home/akanuma/Learning/php/work/contact/.git/modules/fuel/core

CentOS環境で試した時にはディレクトリとして作成されていたので環境によるのだと思いますが、このままだとあとでコミット候補としてインデックスに登録しようとした時に、下記のようなエラーが表示されます。

   1  $ git add .
   2  fatal: Not a git repository: /home/akanuma/Learning/php/work/sample/.git/modules/fuel/packages/parser

また、submodule として登録した時にも下記のようにエラーになります。

   1  $ git submodule add git://github.com/fuel/core.git fuel/core/
   2  The following path is ignored by one of your .gitignore files:
   3  fuel/core
   4  Use -f if you really want to add it.

そこで、下記の用にして .git ファイルの中身がさしているディレクトリを .git ディレクトリとして移動します。

   1  $ rm fuel/core/.git
   2  $ mv .git/modules/fuel/core fuel/core/.git
   3  $ rm fuel/packages/auth/.git
   4  $ mv .git/modules/fuel/packages/auth fuel/packages/auth/.git
   5  $ rm fuel/packages/email/.git
   6  $ mv .git/modules/fuel/packages/email fuel/packages/email/.git
   7  $ rm fuel/packages/oil/.git
   8  $ mv .git/modules/fuel/packages/oil fuel/packages/oil/.git
   9  $ rm fuel/packages/orm/.git
  10  $ mv .git/modules/fuel/packages/orm fuel/packages/orm/.git
  11  $ rm fuel/packages/parser/.git
  12  $ mv .git/modules/fuel/packages/parser fuel/packages/parser/.git
  13  $ rm -rf .git/modules/fuel

次に、FuelPHP の Git 管理下から外すために下記のように Git 関連ディレクトリを削除します。

   1  $ rm -rf .git .gitmodule

ローカルリポジトリを初期化します。

   1  $ git init
   2  Initialized empty Git repository in /home/akanuma/Learning/php/work/contact/.git/

サブモジュールを追加します。

   1  $ git submodule add git://github.com/fuel/core.git fuel/core/
   2  Adding existing repo at 'fuel/core' to the index
   3  $ git submodule add git://github.com/fuel/oil.git fuel/packages/oil
   4  Adding existing repo at 'fuel/packages/oil' to the index
   5  $ git submodule add git://github.com/fuel/parser.git fuel/packages/parser
   6  Adding existing repo at 'fuel/packages/parser' to the index
   7  $ git submodule add git://github.com/fuel/email.git fuel/packages/email
   8  Adding existing repo at 'fuel/packages/email' to the index
   9  $ git submodule add git://github.com/fuel/auth.git fuel/packages/auth
  10  Adding existing repo at 'fuel/packages/auth' to the index
  11  $ git submodule add git://github.com/fuel/orm.git fuel/packages/orm
  12  Adding existing repo at 'fuel/packages/orm' to the index

ドキュメント類を削除します。

   1  $ rm *.md
   2  $ rm -rf docs

アプリケーション全体をコミット候補に加えるためにインデックスに追加します。

   1  $ git add .

ローカルリポジトリにコミットします。

   1  $ git commit -m 'First Commit.'

Eclipse の Fileメニュー -> New -> PHP Project で新規プロジェクト作成ダイアログを開きます。Project名を入力し、Content では Create project at existing location (from existing source) を選択し、oil create で作成したプロジェクトのルートディレクトリを選択し、Finish をクリックしてプロジェクトを作成します。

プロジェクトを右クリックし、Team -> Share Project を選択します。リポジトリタイプは Git を選択し次へ。Use or create repository in parent folder of project にチェックを入れ、先ほど作成したローかリポジトリを選択して Finish をクリックして共有設定をします。

再度プロジェクトを右クリックし、Team -> Commit でコミットダイアログを表示し、コメントを入力してから Commit をクリックしてコミットします。

さらにプロジェクトを右クリックし、Team -> Remote -> Push を選択してダイアログを表示し、Location に github のリポジトリの情報を入力して次へ。Source ref: で master を選択して Add Spec ボタンをクリックし、Finish ボタンをクリックして github への Push を実行します。

以上で FuelPHP のプロジェクトを github 管理下に置くことができます。

posted by Png akanuma on Sat 21 Jul 2012 at 11:54

Comments:

or Preview
Social Bookmarks
  • Delicious
  • B_entry2198
  • Clip_16_12_w
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ