svn2cl(1) | User Commands | svn2cl(1) |
svn2cl - Create a ChangeLog from a subversion log.
svn2cl [OPTION]... [PATH]...
svn2cl generates a classic GNU-style ChangeLog from the log messages in a subversion repository. It acts as a wrapper around the 'svn log' command, parsing the XML output with an XSLT stylesheet. Alternatively it can generate HTML output intended for use with the svn2html.css style sheet that comes with svn2cl.
In addition to its own options, it accepts and passes along most svn log options; see 'svn help log' for a list of those and their documentation. If PATH is not given, svn2cl will run svn log on the current directory, so it should do the right thing when run from the top of a subversion checkout of the project.
Optional PATH arguments and the following options are passed
directly to the 'svn --xml log' command: -r,
--revision, --targets, --stop-on-copy,
--username, --password, --no-auth-cache,
--non-interactive, --config-dir and --limit.
See 'svn help log' for more information on these options.
An authors file is basically an XML file that should look
something like:
<?xml version="1.0" encoding="utf-8"?>
<authors>
<author uid="arthur">
Arthur de Jong <arthur@arthurdejong.org>
</author>
</authors>
svn2cl searches for <author> tags with the specified uid attribute. The
content from the author tag is substituted for the author name.
The <author> tag may also contain XML child tags which can
be useful for embedding HTML into the result. For this to work namespace
information should be included for HTML output:
<?xml version="1.0" encoding="utf-8"?>
<authors xmlns:html="http://www.w3.org/1999/xhtml">
<author uid="arthur">
Arthur de Jong
<<html:b>arthur@arthurdejong.org</html:b>>
</author>
</authors>
The svn2cl distribution contains a sample authors.xml file.
As a bonus a plain text authors file that looks like the following
is automatically converted to the XML representation:
arthur:Arthur de Jong <arthur@arthurdejong.org>
Note that the default revison range for svn log is BASE:1. This means that svn2cl will not always include the most recent revisons of the repository. Either run 'svn update' before running svn2cl or pass '-r HEAD:1'.
Run svn log recursively on the current directory and generate a
text ChangeLog file in the current directory for the entire log history:
svn2cl
Output the changes from the last week, while including revision
numbers in the ChangeLog:
svn2cl -i -r "HEAD:{`date -d '7 days ago' '+%F %T'`}"
(actually subversion will include the first revision before the specified
period)
Generate an HTML changelog for
svn://svn.example.com/project/trunk, removing "project/trunk" from
the file names in the changelog. Group all commits per day into one
ChangeLog entry and only include changes from 2005:
svn2cl --html --strip-prefix=project/trunk --group-by-day \
-r '{2006-01-01}:{2005-01-01}' \
svn://svn.example.com/project/trunk
'svn help log'
Copyright © 2005, 2006, 2007, 2008, 2009, 2010, 2013 Arthur
de Jong <arthur@arthurdejong.org>.
This is free software; see the license for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
Oct 2010 | Version 0.14 |