Question

I'm using a subversion repository and I want to know whenever somebody asks my repository for a checkout; like a 'svn co' or an 'svn up'. Is there a hook or some other method that I can use so that a script is run, or email sent, whenever somebody requests information from my svn server? How can I achieve this without relying on apache logs?

BTW it is a pretty simple repository just meant for Educational purposes.

(If you need more information then just ask. Thanks in advance.)

Was it helpful?

Solution

The following are all the supported hooks in Subversion 1.5, from the Version Control with Subversion book:

  • start-commit
  • pre-commit
  • post-commit
  • pre-revprop-change
  • post-revprop-change
  • pre-lock
  • post-lock
  • pre-unlock
  • post-unlock

There is no pre-checkout or pre-update hook like you describe.

OTHER TIPS

If you are using TortoiseSVN, you have access to client-side hooks.

You could do whatever you want using Apache as SVN server and (for example) mod_perl to hook into the requests. Maybe the log files already show the information you want.

SVN via SSH should also be possible: Analyze the commands started by the SVN client and wrap them (for example, by renaming the original binary with ".orig" extension and putting a (shell) script into that place.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top