This short Python script will provide CSV with SVN log output:
#!/usr/bin/env python import csv import subprocess import sys import xml.etree.cElementTree as etree log_text = subprocess.Popen(['svn', 'log', '--xml'] + sys.argv[1:], stdout=subprocess.PIPE).communicate()[0] log_xml = etree.XML(log_text) csv_writer = csv.writer(sys.stdout) for child in log_xml.getchildren(): csv_writer.writerow([ child.attrib['revision'], child.findtext('date'), child.findtext('author').encode('utf-8'), child.findtext('msg').encode('utf-8'), ])
It passes command line arguments to the calling SVN call, so if you want to view version 34 and later, you can call it like this:
$ svnlog2csv -r 34:HEAD >my_spreadsheet.csv
Charles Duffy
source share