Tags:
create new tag
, view all tags

SvnPlugin

Improves traceability of task and commits with subversion repository

Overview

The SVN plugin intends to improve traceability of coding activities and integration with tools for web-browsing code repositories. It map s tickets with tasks, bugs, enhancements to commit messages and revisions in a subversion repository.

Syntax Rules

CONFLICT version 0:
%SVNTIMELINE{  parameters here }%
shows formated and referenced commit messages
CONFLICT version new:
%SVNTIMELINE{  parameters here }%
shows formated and referenced commit messages
CONFLICT end
%SVNTICKETREF{  parameters here }% 
shows the commit messages related to a specific ticket

Parameters

Name Description
ticketprefix Ticket name without a number, tipicaly there will be severl tickets startin from MyProjectTicket1 to MyProjectTicketXXXX in this cast the ticketprefix will be "MyProjectTicket"
svnpath Path to a subversion repository
ticketnum Specifies the number of a ticket we are searching for (used only in SVNTICKETREF)
format The usual parameter, $rev is replaced with a revision number
$author with an autor name, and $msg with commit log of a specific revision
limit Limit the search for n last revisions

Examples

SVNTIMELINE example

%SVNTIMELINE{ 
  ticketprefix="MyProject"  
  svnpath= "svn://projectserver/svn/MyProject/trunk/" 
  format="|[[http://projectserver/websvn/listing.php?repname=svn&path=MyProject&rev=$rev][rev.$rev]] |$author |$msg  |" 
}%
Produces a table (this is a fake!) with subversion logs hyperlinked to websvn repository viever to a specific revision and to a related ticket with described activity. Every "#number" pattern in commit log is replaced with a link to a ticket specified by ticketprefic parameter.
eg. #2 -> MyProjectTicket2

rev.123 vaclav fix of #3 bug
rev.122 vaclav implementation of GUI feature, ticket #2
rev.121 vaclav some other commit which does not reference any ticket
rev.120 vaclav parser enhancement, ticket #1

SVNTICKETREF example

%SVNTICKETREF{
  ticketprefix="MyProjectTicket"
  ticketnum="%CALC{$EVAL(%TOPIC%)}%"  
  svnpath= "svn://projectserver/svn/MyProject/"
  format="|[[http://projectserver/websvn/listing.php?repname=svn&path=MyProject&rev=$rev][rev.$rev]] |$author |$msg  |" 
}%

SVNTICKETREF searches through the message logs of the repository and shows the ones referencing "ticketnum" number in a same table as above example.
SVNTICKETREF is intended to be in every MyProjectTicket. (The ticket is created via some ticket template)

Plugin Settings

Plugin settings are stored as preferences variables. To reference a plugin setting write %<plugin>_<setting>%, i.e. %SVNPLUGIN_SHORTDESCRIPTION%

  • One line description, is shown in the TextFormattingRules topic:
    • Set SHORTDESCRIPTION = Improves traceability of task and commits with subversion repository

  • Debug plugin: (See output in data/debug.txt)
    • Set DEBUG = 0

Plugin Installation Instructions

Note: You do not need to install anything on the browser to use this plugin. The following instructions are for the adminis trator who installs the plugin on the TWiki server.

  • For an automated installation, run the configure script and follow "Find More Extensions" in the in the Extensions section.

  • Or, follow these manual installation steps:
    • Download the ZIP file from the Plugins home (see below)
    • Unzip SvnPlugin.zip in your twiki installation directory. Content:
      File: Description:
      data/TWiki/SvnPlugin.txt Plugin topic
      lib/TWiki/Plugins/SvnPlugin.pm Plugin Perl module
    • Set the ownership of the extracted directories and files to the webserver user.

  • Plugin configuration:
    • Run the configure script and enable the plugin in the Plugins section.

  • The plugin expects that the subversion client is available on the server where TWiki is installed.

Plugin Info

Plugin Author: TWiki:Main.VasekOpekar
Copyright: © 2006, TWiki:Main.VasekOpekar
© 2008-2011 TWiki:TWiki.TWikiContributor
License: GPL (GNU General Public License)
Plugin Version: 2011-03-03
Change History:  
2011-03-03: TWikibug:Item6638: Doc fixes, changing TWIKIWEB to SYSTEMWEB -- TWiki:Main.PeterThoeny
10 Nov 2006: Initial version
TWiki Dependency: $TWiki::Plugins::VERSION 1.1
CPAN Dependencies: none
Other Dependencies: Subversion client must be installed on the TWiki server
Perl Version: 5.005
Benchmarks: GoodStyle nn%, FormattedSearch nn%, SvnPlugin nn%
Plugin Home: http://TWiki.org/cgi-bin/view/Plugins/SvnPlugin
Feedback: http://TWiki.org/cgi-bin/view/Plugins/SvnPluginDev
Appraisal: http://TWiki.org/cgi-bin/view/Plugins/SvnPluginAppraisal

Related Topics: TWikiPlugins, DeveloperDocumentationCategory, AdminDocumentationCategory, TWikiPreferences

Topic attachments
I Attachment History Action Size Date Who Comment
Unknown file formatmd5 SvnPlugin.md5 r1 manage 0.1 K 2011-03-04 - 07:40 PeterThoeny  
Unknown file formatgz SvnPlugin.tar.gz r1 manage 5.0 K 2006-11-10 - 15:09 VasekOpekar Initial version
Compressed Zip archivetgz SvnPlugin.tgz r1 manage 5.5 K 2011-03-04 - 07:40 PeterThoeny  
Compressed Zip archivezip SvnPlugin.zip r2 r1 manage 7.0 K 2011-03-04 - 07:40 PeterThoeny  
Unknown file formatEXT SvnPlugin_installer r1 manage 3.4 K 2011-03-04 - 07:40 PeterThoeny  
Edit | Attach | Watch | Print version | History: r5 < r4 < r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r5 - 2013-10-16 - PeterThoeny
 
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by Perl Hosted by OICcam.com Ideas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2016 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.