gitを使いたいと思って色々とサービスを調べたんだけど、なんとなく気に入ることが出来なくて…結局、さくらのVPSに構築してみることにした。 まだお試し期間だけど。 今回はUbuntu 11.04にgitリポジトリを用意し、Macからリポジトリを管理する。
gitを管理するにあたって、Gitoliteが使いやすいらしい。 ■ gitのgitによるgit(ユーザ)のためのリポジトリ管理 | Ken's evitation
http://blog.teapla.net/?p=176以前、gitosisについて書いたけど、これよりも細かく管理できるみたい。 使い方は似てるっぽい。各種サービス
いくつか、有名なサービスのプランを紹介。■ Plans & Pricing - GitHub
https://github.com/plans$7/mo 5 Private Repositories 1 Private Collaborator有名所。 よさそうだけど "5 Private Repositories" ということで、使って壊してを繰り返すことを考えると物足りない? 公開してしまえばいいんだけど…別の理由もあってやめた。 ここはforkして色々出来るのがいいよねっ!って使い方も含めて楽しむのがいいのかも。
■ Pricing/Plans | Assembla
http://www.assembla.com/plans$100/month遊びに使う程度だと高い。
■ Plans and pricing for Bitbucket
https://bitbucket.org/plansFreeここはgitじゃなくて、mercurialだけど、gitにこだわらないならおすすめ! ちょっと使ってたことあるけど、便利。 安いってもんじゃなく、無料! 数人なら使えるし、wikiも使える。
別の理由 - JIRA
gitを選ばなかったもうひとつの理由。 それはJIRAを使ってみたかったから。 それだけー。■ JIRA (ジラ) - 価格
http://www.atlassian.com/software/jira/japan-pricing.jsp少人数だったら安いし、使ってみてもいいんじゃないかな?と思ってる。 ただ、これは製品であって、サービスじゃないから自分で管理しなきゃならないけどね。 ちなみに、JIRAもBitbucketもアトラシアン(Atlassian)の製品&サービス。■ リックソフト株式会社|アトラシアン(Atlassian)製品のプロフェッショナルサービスを提供します
http://www.ricksoft.jp/JIRAの情報はほとんど英語だから、日本語で読みたいとか調べたいなら、このサイトが役立つかも?本題のGitolite
やっと本題のGitoliteのインストール。 ■ Pro Git - Pro Git 4.8 Git サーバー Gitolitehttp://progit.org/book/ja/ch4-8.htmlこの通りにやれば出来るから、ちょっと気になったことだけメモ。Gitoliteはサーバー上のgitをクライアントから操作するような仕組みなので、サーバーの管理なんだけど、クライアントで操作する。
サーバー準備
- git
- ssh
- perl
- gitoliteユーザ
サーバーではこれだけは準備しておく。 gitを使えることが目的だから、gitは必要。 sshはgitを使うときにも、Gitoliteを使うためにも必要。
クライアント準備
- git
- ssh
- ssh-copy-id
gitとsshの必要性はサーバーと同じ。 ssh-copy-idってのは、特定のユーザの公開鍵をサーバーに登録するスクリプト。単なるスクリプトだから、手元に無かったらネットから拾ってくればそのまま使える。
gitoliteユーザのログイン準備
サーバー上のgitoliteユーザがgitをいじれるようにログイン出来るようにする。ssh-copy-id -i ~/.ssh/id_rsa gitolite@gitserver
早速ssh-copy-idを使うんだけど、ssh認証はパスワード認証を許可しておくこと。 ここで鍵を登録してしまえばパスワード認証は拒否設定にしても大丈夫。
ssh gitolite@gitserver pwd
これが実行できて "/home/gitolite" と表示されることを確認しておく。 表示される文字列は環境によるけど、だいたいこうなるでしょう。 逆に言うと、このコマンドが実行できる環境を作るのがssh-copy-idだから、無理してssh-copy-idを使わなくても問題ない。
Gitoliteをインストール
git clone git://github.com/sitaramc/gitolite cd gitolite/src ./gl-easy-install -q gitolite gitserver sitaram
自分の環境ではsakuraサーバーを使ってるし、kenユーザのため、こんな感じに実行した。
./gl-easy-install -q gitolite sakura ken
cd ~/gitolite-admin/
クライアントのホームディレクトリにgitolite-adminが出来ていたらたぶん大丈夫。 gitolite-adminには "conf", "keydir" の2フォルダがある。 confディレクトリには "gitolite.conf" ファイルがある。 keydirディレクトリには "ken.pub" がある。これはgl-easy-installコマンドの最後の引数(クライアントのユーザ名)がファイル名になってる。
設定はgitolite.confを編集、pushすることで行う。 ■ Pro Git - Pro Git 4.8 Git サーバー Gitolite
http://progit.org/book/ja/ch4-8.html#id91編集のしかたなどはこちらをどうぞ。長々書いたけど、実行したコマンド数を見ればとても簡単にインストール出来ることがわかる。