svn2log - automatically generate changelogs from SVN

About

Do you want to publish a list of changes of your software project? SVN2Log automatically generates changelogs from Subversion repository. You do not need to waste your time and write special changelog document with a subset of features already described in your SVN commits’ desriptions – you decide which parts will be displayed to your users.

Features

  • automatically generates text ChangeLog file from Subversion repository in standard GNU-style format;
  • use /* … */ comments in your SVN commits to mark parts of the descriptions which you don’t want to be visible for users;
  • limit information presented using commandline switches;
  • UTF-8 support;
  • written in Python, easily scriptable so you can add it to your cron jobs;
  • open sourced, free to use;

Benefits

  • you don’t need to write the same information twice – once during SVN commit and once in a file describing a list of changes;
  • forces good practice of well-describing SVN commits among developers;
  • every developer decides which information will be presented to end users;
  • provide always the latest information about changes in software used by your clients;
  • no reason to email ChangeLogs – users can have newest ChangeLogs always published on the webpage, automatically;

Download

Latest release: 2010-12-01   Download

History

2010-12-01 grant.croker at ingres.com

send output to stdout when the file is „-”, i.e. –output -

2009-08-18 Chris.Clark at ingres.com

made dependency on PyXML optional.

2009-08-17 Chris.Clark at ingres.com

Removed dependency on PyXML (aka python-xml), which is no longer supported. See http://sourceforge.net/projects/pyxml/. NOTE this program expects the output from:
svn -v --xml
I.e. expects the verbose mode (of the xml output). Without the versbose mode will see error:
<logentry> doesnt have <paths> child.

2009-08-17 Chris.Clark at ingres.com

Added first-line-only. Only show first line of commit message/log.

2006-08-03 Przedsiebiorstwo Informatyczne CORE <svn2log at core.com.pl>:

-H, –no-host generate author name without hostname

FAQ

How to use the script?

First unpack the svn2log.zip archive anywhere on your disk. Then issue the command:

svn log -v --xml svn://www.svnserver.com/repository | python /path/to/svn2log/svn2log.py -s -O -L -H -p '/(branches/[^/]+|trunk)/' -o changelog.txt

to generate changelog.txt file without too detailed information from repository located at svn://www.svnserver.com/repository url.

python svn2log.py --help

gives you detailed description of all available switches.

Which operating systems are supported by svn2log?

Every one supported by Python. For example Linux and Windows are supported.

Contact / Questions

All questions and feature requests should be emailed to: