カラクリスタ

Subversionでサイトを更新するためのメモ

Subversion でサイトを更新するにはどうしたらいいか。


  • ちょさんXREA を rsync で更新する を見ていて、ふと Subversion でサイト管理できるよなーと思って、今のところやるつもりは無いけど、とりあえずアイディアだけまとめておく。

Subversion でサイト管理する、というか Subversion リポジトリをデータベースとして扱うには、

  • リポジトリを直接読み込む
  • コミット時に自動的に(別のディレクトリに)チェックアウトさせる

のどちらかが考えられる。

で、CGI 等で動的に利用する場合前者、静的ファイルとかに利用する場合後者、ということになる。

とりあえず後者の場合、フックスクリプトでごにょごにょして、チェックアウトさせればよさげ。ただ、 .svn 以下を読まれないようにしておかないとまずい。

前者の場合、言語によってライブラリがあったりなかったりするような気がするので省略。Perl の場合、Catalyst の Model にあるっぽいのでそれ使うといいかも。他の手段で直接読み込む場合、Subversion の Perl bind に一緒についてくる SVN::Core とか使うことになるのかな?ただ CPAN からは手に入らないので、ちょっと面倒かもしれないけど。

まあ、こんな感じか。