2012年2月29日水曜日

GitoliteをMac OS X Lion Serverにインストールする

クライアントからgitolite-adminがclone出来ずに非常に悩んだのだが、最終的には次のサイトを見て分かった。
gitolite で Git リポジトリへの SSH アクセスを制御する
Gitolite git clone error

ポイント
  1. ssh-keygenで生成するファイルは、普段利用しているid_rsa.pubでは無く、別のものにする。
  2. Appleの提供するGitを使うならサーバーにXcodeをインストールする。
  3. 2でインストールされたGitを使うなら、サーバーのgitユーザーのホームフォルダにある.gitolite.rcに下記の一行を追加する。
  4. $ENV{GIT_EXEC_PATH} = "/usr/libexec/git-core";

以上の全てを満たしておかないと、クライアントからgitolite-adminをcloneしようとした時に下記のエラーが出る。
$ git clone GITUSER@SERVERNAME:gitolite-admin
Cloning into 'gitolite-admin'...
Warning: No xauth data; using fake authentication data for X11 forwarding.
Assertion failed: (argv0_path), function system_path, file exec_cmd.c, line 30.
error: git-shell died of signal 6
fatal: The remote end hung up unexpectedly

特に上記ポイントの3番目は忘れがちなので注意が必要だ。

0 件のコメント: