Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there a Subversion Checkout Hook or something similar?

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

like image 722
Robert Massaioli Avatar asked Apr 30 '09 01:04

Robert Massaioli


People also ask

What is checkout in Subversion?

Advertisements. Subversion provides the checkout command to check out a working copy from a repository. Below command will create a new directory in the current working directory with the name project_repo.

What are hooks in SVN?

A hook is a specifically named program that is called by the Subversion server during the execution of some operations. There are exactly nine hooks which must reside under the hooks directory in the repository. When you create a new repository, you get nine template files in this directory, all of them having the .

How do I checkout a link in SVN?

Open the SVN server, right-click on the repository and select the copy URL to clipboard (for the VIsualSVN server) and paste it on the command line. User credentials will be the same as what we set at the time of user creation. After every successful checkout operation, the output will print a revision number.


2 Answers

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.

like image 136
Greg Hewgill Avatar answered Oct 21 '22 11:10

Greg Hewgill


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

like image 22
si618 Avatar answered Oct 21 '22 10:10

si618