CvsTagDiff

Description

Generates an XML-formatted report file of the changes between two tags or dates recorded in a CVS repository.

Parameters

Attribute Description Required
startTag The earliest tag from which diffs are to be included in the report. exactly one of the two.
startDate The earliest date from which diffs are to be included in the report.
endTag The latest tag from which diffs are to be included in the report. exactly one of the two.
endDate The latest date from which diffs are to be included in the report.
destfile The file in which to write the diff report. Yes
rootdir Root directory for the package, if different from the package name. No

Parameters inherited from the cvs task

Attribute Description Required
compression true, false, or the number 1-9 (corresponding to possible values for CVS -z# argument). Any other value is treated as false No. Defaults to no compression. if passed true, level 3 compression is assumed.
cvsRoot the CVSROOT variable. No
cvsRsh the CVS_RSH variable. No
package the package/module to analyze. Yes
quiet suppress informational messages. No, default "false"
port Port used by CVS to communicate with the server. No, default port 2401.
passfile Password file to read passwords from. No, default file ~/.cvspass.
failonerror Stop the buildprocess if the command exits with a returncode other than 0. Defaults to false No

Examples

  <cvstagdiff cvsRoot=":pserver:anoncvs@cvs.apache.org:/home/cvspublic"

                destfile="tagdiff.xml"

                package="jakarta-ant"

                startTag="ANT_14"

                endTag="ANT_141"

  />

Generates a tagdiff report for all the changes that have been made in the jakarta-ant module between the tags ANT_14 and ANT_141. It writes these changes into the file tagdiff.xml.

  <cvstagdiff

                destfile="tagdiff.xml"

                package="jakarta-ant"

                rootdir="jakarta/ant"

                startDate="2002-01-01"

                endDate="2002-31-01"

  />

Generates a tagdiff report for all the changes that have been made in the jakarta-ant module in january 2002, with rootdir indicating that the actual location of the jakarta-ant module in cvs is jakarta/ant rather than jakarta-ant. In this example cvsRoot has not been set. The current cvsRoot will be used (assuming the build is started from a folder stored in cvs. It writes these changes into the file tagdiff.xml.

Generate Report

Ant includes a basic XSLT stylesheet that you can use to generate a HTML report based on the xml output. The following example illustrates how to generate a HTML report from the XML report.


        <style in="tagdiff.xml" 

               out="tagdiff.html" 

               style="${ant.home}/etc/tagdiff.xsl">

          <param name="title" expression="Ant Diff"/>

          <param name="module" expression="jakarta-ant"/>

          <param name="cvsweb" expression="http://cvs.apache.org/viewcvs/"/>

        </style>

Sample Output


<?xml version="1.0" encoding="UTF-8"?>

<tagdiff startTag="ANT_14" endTag="ANT_141">

  <entry>

    <file>

      <name>src/main/org/apache/tools/ant/DirectoryScanner.java</name>

      <revision>1.15.2.1</revision>

      <prevrevision>1.15</prevrevision>

    </file>

  </entry>

</tagdiff>


Copyright © 2002 Apache Software Foundation. All rights Reserved.