Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
svn2cl(1)			  User Commands 		       svn2cl(1)

NAME
     svn2cl - Create a ChangeLog from a subversion log.

SYNOPSIS
     svn2cl [OPTION]...  [PATH]...

DESCRIPTION
     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 gen-
     erate 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.

     --strip-prefix=NAME
	    Strip  NAME  from  the  first  part  of   all   file   names   (e.g.
	    project/trunk).   By defaults the current path inside the repository
	    is stripped.

     --linelen=NUM
	    Wrap lines at NUM characters.  By default, lines are wrapped  at  75
	    characters.  This option is ignored when the --html option is speci-
	    fied.

     --group-by-day
	    This option causes all commit messages to be grouped by day, as long
	    as	all the changes are by the same author.  By default each message
	    is listed separately with its own timestamp.

     --separate-daylogs
	    Include a blank line between log entries when they	are  grouped  by
	    day.   Only  useful  with the --group-by-day option.  This option is
	    ignored when the --html option is specified,  edit	svn2html.css  to
	    tune the layout.

     -i, --include-rev
	    Include  the  subversion  revision	number in the ChangeLog.  If the
	    --html option is specified this is	implied,  edit	svn2html.css  to
	    turn it off.

     -a, --include-actions
	    Add  action  labels [ADD], [DEL] and [CPY] tags to files to show the
	    operation that is performned on the files.

     --break-before-msg[=NUM]
	    Add a line break (or multiple line breadks) between  the  paths  and
	    the  log  message.	If the --html option is specified this option is
	    ignored, edit svn2html.css to set spacing.

     --reparagraph
	    Newlines inside  paragraphs  are  ignored  and  paragraphs	are  re-
	    wrapped.  Paragraphs are separated by empty lines.

     --title=NAME
	    If	outputting an HTML file the NAME is used as the title.	This op-
	    tion is ignored for normal text output.

     --revision-link=NAME
	    This option is used to generate links from the revision  numbers  in
	    the generated HTML file.  If NAME contains two hashes '##' that part
	    will be replaced by the revision number, otherwise the revision num-
	    ber  will  be  appended  to NAME.  Only the first occurrence of '##'
	    will be replaced.
	    This option is ignored for normal text output.

     --ticket-link=NAME
	    This option is used to generate links  from  references  to  tickets
	    within the commit message in the generated HTML file.  Anything that
	    looks  like a ticket reference (e.g. '#foo') will be replaced with a
	    link to NAME with the ticket part ('foo' in the example) appended.
	    This option is ignored for normal text output.

     --ticket-prefix=NAME
	    This option is used for finding ticket markers in the commit message
	    (when the --ticket-link option is used).  The default value is '#'.
	    This option is ignored for normal text output.

     --ignore-message-starting=STRING
	    Any log messages that start with the specified  STRING  are  ignored
	    and  will  not show up in the output.  The STRING comparison is case
	    sensitive.

     -o, -f, --output=FILE, --file=FILE
	    Output ChangeLog to  FILE  instead	of  the  default  ChangeLog  (or
	    ChangeLog.html for HTML output).

     --stdout
	    Output ChangeLog to stdout instead of to a file.

     --authors=FILE
	    The  FILE  is  used  to  map author names as exported by svn to full
	    names.  See the section on AUTHORS FILES below for more information.
	    Note that the --authors option can have  poor  performance	in  some
	    cases.

     --html
	    Generate  an HTML file containing a ChangeLog instead of the default
	    text ChangeLog file.   This  feature  is  still  experimental.   The
	    svn2html.css  file	that is included in the distribution can be used
	    to format the HTML.

     -h, --help
	    Show short summary of options.

     -V, --version
	    Show version of program.

     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.

AUTHORS FILES
     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 &lt;arthur@arthurdejong.org&gt;
	   </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 &lt;<html:b>arthur@arthurdejong.org</html:b>&gt;
	   </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 auto-
     matically converted to the XML representation:
	 arthur:Arthur de Jong <arthur@arthurdejong.org>

NOTES
     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'.

EXAMPLES
     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,  remov-
     ing  "project/trunk"  from the file names in the changelog.  Group all com-
     mits 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

SEE ALSO
     'svn help log'

COPYRIGHT
     Copyright (C) 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.

Version 0.14			    Oct 2010			       svn2cl(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=svn2cl&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help