さくらにSubversionリポジトリを置く

ことは可能なのか?

ローカルで使うぶんには当然問題なし。問題はリモートからアクセスするとき。デーモンを上げちゃダメってことでsvnserveはボツ、mod_dav_svnももちろん無理。svn+sshが唯一の方法となる。自分ひとりが使うにはそれでいいんだけど、匿名Read-onlyアクセスができない。

なんにせよsshの認証を通らないとリポジトリにアクセスすることは不可能なわけだから、そこから。匿名アクセス用の鍵を作成して、authorized_keysに登録する。……だけだとシェルをまるまる開放してしまうので、オプションに''command="svnserve -t"''を追加する。これで鍵単位で実行できるコマンドを制限できる。

で、リポジトリに対する制限。ssh認証を通ったユーザごとにアクセス制限を掛けることができるが、認証を通ってくるユーザはひとりしかいないから、そこで振り分けることはできない。よくみたら、svnserveのオプションに--read-onlyというのがある。deprecatedとなっているが、これが使えるのであれば、authorized_keysのあれを''command="svnserve -t -R''とすればいけそう。

そんな感じのメモ。

まぁメンドイっつーか、抜けが怖いので多分やらないと思う。ソースの閲覧はWebSVN、ダウンロードはtarballをちゃんと作れば問題ないしょ。(WebSVNViewCVSみたいなtarball作成機能があればいいんだけど)