2010-02-18(木)
Gitで共有リポジトリを作るならgitosisが便利
ちょろっと渡邉さんのエントリに補足を。
実用Git
吉藤 英明 (監訳)ちなみに、本には直接関係ありませんが、この本の翻訳もGitを使って進められました。
原稿はGitで管理しようと言う話は最初から訳者3人の間で出ていたのですが、原稿を管理するとなると当然read権限も含めたパーミッションの管理が必要でした。3人がgit-daemonを立ててお互いにpullしようかとも思ったのですが、git-daemonを使うと匿名で誰でも読めるリポジトリとなってしまいます。HTTP経由だとWEBサーバによってアクセスコントロールはできますが、速度に不安が残ります。ということでsshがベストなんでしょうが、gitのためだけに3人分のアカウントを作るのはちょっと気が引けました。
そこで、今回使ったのがgitosisです。gitosisについては入門gitにも入門Gitにも出ていますが、以下のような特徴があります。
- サーバにアカウントを作らなくても、gitリポジトリへのアクセス権を管理できる
- readとwriteのパーミッションを細かく設定できる
- サーバにログインしなくても、gitリポジトリ経由で設定変更できる
これらは、gitのフックを使って巧みに実装されています。例えば、gitosis-adminリポジトリのkeys/USER.pub にファイルを入れてpushすると、これらの公開鍵がサーバ上のgitosisユーザの .ssh/authorized_keys に書き込まれるようなフックが動作します。このような原理で、サーバにアカウントを作らなくても(gitosisアカウントによって)gitリポジトリへアクセスできたり、サーバにログインしなくても(フック経由で)gitosisのアクセス権の設定を変更することができるようになっています。
gitのコマンドだけ覚えていればリポジトリやパーミッションの管理ができるというのは便利ですので、複数人で扱うgitのサーバを運用している方は、導入を検討してみてはいかがでしょうか? gitosisは git clone git://eagain.net/gitosis.git することで入手できます。
余談
実用Git のP216 の訳注は、実際に翻訳中に起こった事件ですw テンパってたとこを吉藤さんに助けて頂きましたm(_ _)m
- 182 http://www.google.co.jp/search?q=gitosis&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja-JP-mac:official&hl=ja&client=firefox-a
- 136 http://www.google.co.jp/search?sourceid=chrome&ie=UTF-8&q=gitosis
- 136 http://www.google.co.jp/url?sa=t&rct=j&q=gitosis&source=web&cd=4&ved=0CD0QFjAD&url=http://d.hatena.ne.jp/hiratara/20100218/1266502789&ei=OJSvTurBCafomAX1zK2qAg&usg=AFQjCNH_BqNj3VzzEqWM4BnqAevpwGvycg&sig2=L5PFc0soDm7B9QN0Aw5HLg
- 87 http://www.google.co.jp/search?aq=f&sourceid=chrome&ie=UTF-8&q=gitosis
- 76 http://www.google.co.jp/url?sa=t&rct=j&q=gitosis&source=web&cd=5&ved=0CEEQFjAE&url=http://d.hatena.ne.jp/hiratara/20100218/1266502789&ei=yK3lTpfNOO3TmAW9neH0BA&usg=AFQjCNH_BqNj3VzzEqWM4BnqAevpwGvycg
- 76 http://www.google.co.jp/url?sa=t&rct=j&q=gitosis&source=web&cd=6&ved=0CEwQFjAF&url=http://d.hatena.ne.jp/hiratara/20100218/1266502789&ctbs=lr:lang_1ja&ei=cyGyTvrBKMrDmQWspI2UAg&usg=AFQjCNH_BqNj3VzzEqWM4BnqAevpwGvycg&sig2=4-G6A4tGLmbdXRsmp5fp
- 61 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=4&ved=0CEQQFjAD&url=http://d.hatena.ne.jp/hiratara/20100218/1266502789&ei=xKQ9T5HvJse3iQeF5dXNBA&usg=AFQjCNH_BqNj3VzzEqWM4BnqAevpwGvycg
- 59 http://pipes.yahoo.com/pipes/pipe.info?_id=faa858a20082ef6d25ad27557e37e011
- 49 http://www.google.co.jp/search?num=100&hl=ja&newwindow=1&qscrl=1&q=gitosis&aq=f&aqi=g10&aql=&oq=&gs_rfai=
- 47 http://d.hatena.ne.jp/






