-->

Is there a Subversion Checkout Hook or something s

2019-01-09 09:31发布

问题:

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.)

回答1:

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.



回答2:

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



回答3:

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.