Subversion’s hook scripts provide a powerful and flexible way to associate actions with repository events. For example, the pre-commit hook allows you to check — and possibly abort — a transaction before it actually gets committed. This entry describes how to install and test a simple Python hook script to prohibit tabs from C++ files.
While Subversion will do a fine job of storing all of the files you want revisioned, it can do quite a bit more. For example, it could send an eMail to a list of users every time a commit is made, to help ensure that at least one more set of eyeballs looks at critical bits of code before they get deployed into production environments. It can allow some users (but not others) to alter some properties (but not others). It can automatically attempt a recompile of code on a particular branch whenever commits are made, inform users as to the outcome of that compile, and even push those changes to a test machine for live experimentation. Subversion's triggers, or hook scripts, can be as simple or as complex as you desire.