雑種のポメラニアン

フリープログラマーの日記とか人生観とか綴るよ

MacOSXのGitサーバーにhttpプロトコルを適用した際にハマったことについてメモ

今までgitプロトコルでサーバー運用してたんだけど
それだとsshでログイン出来る人にしか公開できないので
httpプロトコルでもgit cloneできるようにした。

調べてみるとすげー簡単そうに書かれてるんだけど
guestユーザーで試したところなかなかうまくいかなかったのでメモる。

まずGitリポジトリにアクセスするApacheの設定について。


RackEnv development
ServerName git.mydns.jp
DocumentRoot /Users/hoge/gitoasis/public/
LogLevel debug


Options Indexes FollowSymlinks
AllowOverride None
Order allow,deny
Allow from all

青字については必須ではないけど
今回はRailsアプリ配下にgitリポジトリへのシンボリックリンクを置きたかったので追加した。

次に、扱うリポジトリのhooks/post-updateについて。

exec chmod -R 775 objects/*
exec git update-server-info

赤字の行がないと新しくpushした後にcloneする際にエラーが起きる。

これでめでたく

git clone http://git.mydns.jp/repositories/hoge.git

などとできるようになる。
repositoriesはGitリポジトリへのシンボリックリンク