Common Types of Subversion Hooks

Question :

Common Types of Subversion Hooks,

Answer :

What kinds of hook scripts are people using for Subversion? Just general ideas but code would be great too!

,

I am using the pre-revprop-change hook that allows me to actually go back and edit comments and such information after the commit has been performed. This is very useful if there is missing/erroneous information in the commit comments.

Here I post a pre-revprop-change.bat batch file for Windows NT or later. You
can certainly enhance it with more modifications. You can also derive a
post-revprop-change.cmd from it to back up the old snv:log somewhere or just to append it to the new log.

Read More  Best implementation for Key Value Pair Data Structure?

The only tricky part was to be able to actually parse the stdin from
the batch file. This is done here with the FIND.EXE command.

The other thing is that I have had reports from other users of issues with the use of the /b with the exit command. You may just need to remove that /b in your specific application if error cases do not behave well.

@ECHO OFF    set repos=%1  set rev=%2  set user=%3  set propname=%4  set action=%5    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::  :: Only allow changes to svn:log. The author, date and other revision  :: properties cannot be changed  ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::  if /I not '%propname%'=='svn:log' goto ERROR_PROPNAME    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::  :: Only allow modifications to svn:log (no addition/overwrite or deletion)  ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::  if /I not '%action%'=='M' goto ERROR_ACTION    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::  :: Make sure that the new svn:log message contains some text.  ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::  set bIsEmpty=true  for /f "tokens=*" %%g in ('find /V ""') do (   set bIsEmpty=false  )  if '%bIsEmpty%'=='true' goto ERROR_EMPTY    goto :eof        :ERROR_EMPTY  echo Empty svn:log properties are not allowed. >&2  goto ERROR_EXIT    :ERROR_PROPNAME  echo Only changes to svn:log revision properties are allowed. >&2  goto ERROR_EXIT    :ERROR_ACTION  echo Only modifications to svn:log revision properties are allowed. >&2  goto ERROR_EXIT    :ERROR_EXIT  exit /b 1   

That’s the answer Common Types of Subversion Hooks, Hope this helps those looking for an answer. Then we suggest to do a search for the next question and find the answer only on our site.

Read More  How do I get dbmail to process items from the queue for SQL Server 2005?

Disclaimer :

The answers provided above are only to be used to guide the learning process. The questions above are open-ended questions, meaning that many answers are not fixed as above. I hope this article can be useful, Thank you