私と友人の両方がアクセスできる共有ホスティング アカウントに git リポジトリを設定しようとしています。~/.ssh/authorized_keys に次の行を追加することで、Subversion リポジトリでこれを行うことができました。
command="/usr/bin/svnserve -t -r /path/to/svn/repo \
--tunnel-user=myfriend",no-port-forwarding,no-agent-forwarding,\
no-X11-forwarding,no-pty [ssh key]
git-shell が git の svnserve に相当するものであることはわかっていますが、特定のパスへのアクセスを制限する -r オプションに相当するものはないようです。友人にアクセスさせたくない他の git リポジトリがあるため、これは問題です。
私が望んでいることを実行できると思われる gitosis について簡単に読んだことがありますが、この特定の要件を達成するために別のソフトウェアをセットアップする前に、より簡単な解決策があるかどうかを確認したいと思います。前もって感謝します!
編集:それを行うためのスクリプトを提供するこの記事を見つけました:
http://eagain.net/blog/2007/03/22/howto-host-git.html
しかし実際には、後に gitosis を書いたのと同じ人によって書かれ、古いものとしてマークされています。また、共有ホスティング アカウントではできない専用の UNIX ユーザーを作成する必要があるため、私の状況では gitosis は不可能なようです。ただし、これを誤解している場合は、間違っていることが証明されたいと思います!