2013.10.02 Wednesday
gitブランチの作成とeclipseからの参照設定
gitでブランチを作成し、eclipseから参照できるよう設定をしました。
プルできるようにする設定が必要なのは、ちょっと煩雑。
subversionと違って、チームからブランチの切り替えができるので、ブランチごとにプロジェクトを作成する必要がないのは便利かもしれない。
ex) ブランチ名「phase2」を作成
・サーバレポジトリにブランチを作成
cd /home/gitrepo/xxx
git branch phase2
・eclipseでブランチを参照する設定
プロジェクト(右クリック)⇒チーム⇒切り替え⇒新規ブランチ
ブランチ名に
phase2
を入力し、完了
以降は、
プロジェクト(右クリック)⇒チーム⇒切り替え
からトランク(master)、ブランチ(phase2)を切り替えることができる。
・クライアントEclipseでブランチをプル可能にする設定
ウィンドウ⇒設定⇒チーム⇒Git⇒構成
エントリーの追加
キー:branch.phase2.merge
値:refs/heads/phase2
を入力し、OK
参考
2013.08.08 Thursday
gitレポジトリの作成
CakePHPの開発環境にgitを採用しました。
centosにgitレポジトリを作成して、クライアントPCのEclipseのEGitプラグインから利用。
プッシュ時にデプロイするフックを設定しました。
デプロイにjenkinsとか必要かと思っていましたが、フックだけでできちゃいました。
subversionでもフックってあったらしい。
ビルドもできるね。知らなかった。
jenkinsはテストを自動化して、レポート作成が出来る点が強力なのだろう。
とりあえず、そのときのサーバ側の設定メモ。
■gitインストール
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
rpm -Uvh rpmforge-release-0.5.2-2.el5.rf.i386.rpm
yum install git
centosにはレポジトリがないので、追加をするのがポイント
■サーバレポジトリ作成
レポジトリディレクトリを作成(gitrepo.gitをレポジトリにする場合)
mkdir gitrepo
cd gitrepo
git init
管理ファイルをレポジトリへコピーして、追加、コミット
cp -pR /home/xxx .
git add .
git commit -m 'initial commit.'
※今回はcakephpのプロジェクトを登録したのだけど、.gitignoreにconfigなどの初期ディレクトリのいくつかが記述されているので、管理したい場合は消す。
共有レポジトリを作成
cd ..
mkdir gitrepo.git
git clone --bare gitrepo gitrepo.git
共有レポジトリはみんなで触れる
chmod -R o+w gitrepo.git
さっき作ったレポジトリは使わないので削除
rm -rf xxx
■プッシュ時フック設定
cd gitrepo.git/hooks
vi post-update
vi post-update
※post-updateの内容
#!/bin/sh
cd /home/gitrepo.git
cd /home/gitrepo.git
git archive master | tar -x -C /home/htdocs/xxx
シェルに実行権限を付与
chmod 755 post-update
※レポジトリはプロジェクトごとに分割したほうがよい。
svnはサブディレクトリからチェックアウトできたが、gitはrootディレクトリからのチェックアウトになるみたい。