gitolite で Git リポジトリへの SSH アクセスを制御する
Gitolite git clone error
ポイント
- ssh-keygenで生成するファイルは、普段利用しているid_rsa.pubでは無く、別のものにする。
- Appleの提供するGitを使うならサーバーにXcodeをインストールする。
- 2でインストールされたGitを使うなら、サーバーのgitユーザーのホームフォルダにある.gitolite.rcに下記の一行を追加する。
$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番目は忘れがちなので注意が必要だ。