それでは、具体的に「hook」の設定方法を紹介します。
リポジトリを作成して、モジュールを登録するとモジュールディレクトリの中にhookというディレクトリが作成されています。次の例は、前回作成した「test」モジュールの「hook」ディレクトリの中身です。
$ ls /var/svn/test/hook
post-commit.tmpl
post-lock.tmpl
post-revprop-change.tmpl
post-unlock.tmpl
pre-commit.tmpl
pre-lock.tmpl
pre-revprop-change.tmpl
pre-unlock.tmpl
start-commit.tmpl
これらのファイルは、「hook」を使うための雛形ファイルです。ファイル名からどのような「hook」かが、想像できると思います。例えば、「post-commit.tmpl」ファイルは、コミット直後の「hook」を設定する雛形ファイルです。
コミット直後の「hook」を設定するには、雛形ファイルを「post-commit」としてコピーして実行権限を付加します。
$ cp hook/post-commit.tmpl hook/post-commit
$ chmod +x hook/post-commit
このファイルは、通常のシェルスクリプトファイルとなっているので、リポジトリの更新をしたいときには、次のような形で記述します。
svn update [更新したいリポジトリへのパス]
ウノウでは、各サービスごとに「共通の開発環境」と「個人の開発環境」を構築しているため、それぞれの環境でテストをすることができます。そのため、変わらない品質でサービスをリリースすることが可能となるのです。
|