This article is no longer valid. Google now charges for all Google App setups.
I have just recently completed a project at work that uses a Perl script to parse SVN logs to CSV format for reading in Excel or any other spreadsheet application. I found a few other SVN log parsers online but nothing that met my requirements so I have written a log parser from scratch and would like to share it with you here. Most of the other SVN log parsers that I found online were too targeted to do specific things with the logs. My only requirement was to get the SVN log from the server in xml format and convert that to CSV to share this information with other developers on my team and of course management will most likely be interested in using it to get an idea of the code turmoil to our SVN repository.
In this article I would like to step through the process I used to develop the Perl script and describe the details of each portion of the code that leads us to the final CSV file output. By understanding how the script works, and with a little bit of Perl power, you should be able to customize the script to do other tasks. If you run into any issues with the details please feel free to contact me and I will be happy to add more detail.
TortoiseSVN if you don't already know is an SVN (Subversion) client that allows you to run SVN commands right in windows explorer. This is a nifty tool that can save you a ton of time. You will spend more time working on your projects rather then hammering the keyboard on the command line trying to accomplish simple SVN tasks.
In this article I would like to explain the process of setting up TortoiseSVN on a windows machine to allow you to connect to your SVN repository over the SSH protocol using a pre-configured PuTTY session that uses a private key to authenticate to the server. This can be done easily using a few free tools that you may even already have installed but, if not I have linked you to them in the tools section at the bottom of this article.