Generates an XML-formatted report file of the change logs recorded in a CVS repository.
Important: This task needs "cvs" on the path. If it isn't, you will get
an error (such as error 2 on windows). If <cvs> doesn't work, try to execute cvs.exe
from the command line in the target directory in which you are working.
| Attribute | Description | Required | 
| Attributes from parent Cvs task which are meaningful here Since ant 1.6.1 | ||
| cvsRoot | the CVSROOTvariable. | No | 
| cvsRsh | the CVS_RSHvariable. | No | 
| package | the package/module to check out. | No | 
| 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 build process if the command exits with a
      return code other than 0. Defaults to false | No | 
| tag | query the changelog for a specific branch. | No | 
| Specific attributes | ||
| dir | The directory from which to run the CVS log command. | No; defaults to ${basedir}. | 
| destfile | The file in which to write the change log report. | Yes | 
| usersfile | Property file that contains name-value pairs mapping user IDs and names that should be used in the report in place of the user ID. | No | 
| daysinpast | Sets the number of days into the past for which the change log information should be retrieved. | No | 
| start | The earliest date from which change logs are to be included in the report. | No | 
| end | The latest date to which change logs are to be included in the report. | No | 
The nested <user> element allows you to specify a
mapping between a user ID as it appears on the CVS server and a name to
include in the formatted report.
Anytime the specified user ID has made a change in the repository, the
<author> tag in the report file will include
the name specified in displayname rather than the user ID.
| Attribute | Description | Required | 
| displayname | The name to be used in the CVS change log report. | Yes | 
| userid | The userid of the person as it exists on the CVS server. | Yes | 
  <cvschangelog dir="dve/network"
                destfile="changelog.xml"
  />
Generates a change log report for all the changes that have been made
under the dve/network directory.
It writes these changes into the file changelog.xml.
  <cvschangelog dir="dve/network"
                destfile="changelog.xml"
                daysinpast="10"
  />
Generates a change log report for any changes that were made
under the dve/network directory in the past 10 days.
It writes these changes into the file changelog.xml.
  <cvschangelog dir="dve/network"
                destfile="changelog.xml"
                start="20 Feb 2002"
                end="20 Mar 2002"
  />
Generates a change log report for any changes that were made
between February 20, 2002 and March 20, 2002
under the dve/network directory.
It writes these changes into the file changelog.xml.
  <cvschangelog dir="dve/network"
                destfile="changelog.xml"
                start="20 Feb 2002"
  />
Generates a change log report for any changes that were made
after February 20, 2002 under the dve/network directory.
It writes these changes into the file changelog.xml.
  <cvschangelog dir="dve/network"
                destfile="changelog.xml">
       <user displayname="Peter Donald" userid="donaldp"/>
  </cvschangelog>
Generates a change log report for all the changes that were made
under the dve/network directory, substituting the name
"Peter Donald" in the <author> tags
anytime it encounters a change made by the user ID "donaldp".
It writes these changes into the file changelog.xml.
Generates a change log report on the ANT_16_BRANCH.
 <cvschangelog dir="c:/dev/asf/ant.head" passfile="c:/home/myself/.cvspass"
                destfile="changelogant.xml" tag="ANT_16_BRANCH"/>
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="changelog.xml" 
               out="changelog.html" 
               style="${ant.home}/etc/changelog.xsl">
          <param name="title" expression="Ant ChangeLog"/>
          <param name="module" expression="ant"/>
          <param name="cvsweb" expression="http://cvs.apache.org/viewcvs/"/>
        </style>
<changelog>
  <entry>
    <date>2002-03-06</date>
    <time>12:00</time>
    <author>Peter Donald</author>
    <file>
      <name>org/apache/myrmidon/build/AntlibDescriptorTask.java</name>
      <revision>1.3</revision>
      <prevrevision>1.2</prevrevision>
    </file>
    <msg><![CDATA[Use URLs directly rather than go via a File.
This allows templates to be stored inside jar]]></msg>
  </entry>
</changelog>
Copyright © 2002-2004 The Apache Software Foundation. All rights Reserved.