gitホスティング
githubは便利でとてもありがたいのだけれど、無料で使うとpublicになってしまう。
お金を払えば良いのだが、
- githubが落ちたらどうしよう?とか
- 大学の研究室で使うには支払い方法的にどうよ?とか
- やっぱりコードは自分の把握してるところに置きたいとか
- 自前のサーバーいくらでもあるからお金払いたくない。
とかあるわけで、自前でgitリポジトリをホスティングしたい。
gitはローカルで使う分には
local> cd /path/to/sources local> git init local> git commit -a -m 'first commit'
見たいな感じで楽チン。しかし、リモートにリポジトリを作ってpushして同期してというのを自前のサーバーでやろうとすると、
#on remote server remote> cd /path/to/repos remote> mkdir test.git remote> git --bare init #on local machine local> cd /path/to/sources local> git remote add origin hoge@severname:/path/to/repos/test.git local> git push origin master
という行程になる。localでの作業は良いとしても、remoteの作業はいちいちsshで接続するのも面倒だし、複数人で行う場合に、アクセス権限とかの設定が面倒。
そこで、gitosisを使うと良いよー!という記事を見つけて使ってみた。
http://openbooth.org/archives/60.html
記事どおりにやればちゃんと動いた。設置が終われば、sshでリモートに繋いだりする必要がないので、とっても楽。gitwebとの連携も出来るっぽい。
僕が設置してて、はまったのは設置前にすでにgitというユーザーを作って、公開鍵暗号方式でログインできるようにしていたところ、authorized_keysが上書きではなく、追記されてしまって動作がおかしくなっていた。(authorized_keysに同じkeyが二つあるとファイルの上のほうが優先されることを知った。)あと、command=なんとかと書くと、ログイン時に動かすコマンドも決められるだねえ。昔使ったけど忘れてたよ。gitosisのためのgitユーザーは改めて、新しく作ったほうがよさそう。