|
- <html>
-
- <head>
- <meta http-equiv="Content-Language" content="en-us">
- <title>CVS Task</title>
- <link rel="stylesheet" type="text/css" href="../stylesheets/antmanual.css">
- </head>
-
- <body>
-
- <h2><a name="cvs">Cvs</a></h2>
- <h3>Description</h3>
- <p>Handles packages/modules retrieved from a
- <a href="http://www.cvshome.org/" target="_top">CVS</a> repository.</p>
- <p>When doing automated builds, the <a href="get.html">get task</a> should be
- preferred over the <i>checkout</i> command, because of speed.</p>
- <p><b>Important:</b> This task needs "<code>cvs</code>" on the path. If it isn't, you will get
- an error (such as error <code>2</code> on windows). If <code><cvs></code> doesn't work, try to execute <code>cvs.exe</code>
- from the command line in the target directory in which you are working.
- <h3>Parameters</h3>
- <table border="1" cellpadding="2" cellspacing="0">
- <tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">command</td>
- <td valign="top">the CVS command to execute.</td>
- <td align="center" valign="top">No, default "checkout".</td>
- </tr>
- <tr>
- <td valign="top">compression</td>
- <td valign="top"><code>true</code> or <code>false</code> - if set
- to true, this is the same as <code>compressionlevel="3"</code></td>
- <td align="center" valign="top">No. Defaults to false.</td>
- </tr>
- <tr>
- <td valign="top">compressionlevel</td>
- <td valign="top">A number between 1 and 9 (corresponding to
- possible values for CVS' <code>-z#</code> argument). Any
- other value is treated as <code>compression="false"</code></td>
- <td align="center" valign="top">No. Defaults to no compression.</td>
- </tr>
-
- <tr>
- <td valign="top">cvsRoot</td>
- <td valign="top">the <code>CVSROOT</code> variable.</td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">cvsRsh</td>
- <td valign="top">the <code>CVS_RSH</code> variable.</td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">dest</td>
- <td valign="top">the directory where the checked out files should
- be placed. Note that this is different from CVS's -d command line
- switch as Ant will never shorten pathnames to avoid empty
- directories.</td>
- <td align="center" valign="top">No, default is project's basedir.</td>
- </tr>
- <tr>
- <td valign="top">package</td>
- <td valign="top">the package/module to check out.</td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">tag</td>
- <td valign="top">the tag of the package/module to check out.</td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">date</td>
- <td valign="top">Use the most recent revision no later than the given date</td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">quiet</td>
- <td valign="top">suppress informational messages. This is the same as <code>-q</code> on the command line.</td>
- <td align="center" valign="top">No, default "false"</td>
- </tr>
- <tr>
- <td valign="top">reallyquiet</td>
- <td valign="top">suppress all messages. This is the same as
- <code>-Q</code> on the command line. <em>since Ant 1.6</em>.</td>
- <td align="center" valign="top">No, default "false"</td>
- </tr>
- <tr>
- <td valign="top">noexec</td>
- <td valign="top">report only, don't change any files.</td>
- <td align="center" valign="top">No, default to "false"</td>
- </tr>
- <tr>
- <td valign="top">output</td>
- <td valign="top">the file to direct standard output from the command.</td>
- <td align="center" valign="top">No, default output to ANT Log as MSG_INFO.</td>
- </tr>
- <tr>
- <td valign="top">error</td>
- <td valign="top">the file to direct standard error from the command.</td>
- <td align="center" valign="top">No, default error to ANT Log as MSG_WARN.</td>
- </tr>
- <tr>
- <td valign="top">append</td>
- <td valign="top">whether to append output/error when redirecting to a file.</td>
- <td align="center" valign="top">No, default to "false".</td>
- </tr>
- <tr>
- <td valign="top">port</td>
- <td valign="top">Port used by CVS to communicate with the server.</td>
- <td align="center" valign="top">No, default port 2401.</td>
- </tr>
- <tr>
- <td valign="top">passfile</td>
- <td valign="top">Password file to read passwords from.</td>
- <td align="center" valign="top">No, default file ~/.cvspass.</td>
- </tr>
- <tr>
- <td valign="top">failonerror</td>
- <td valign="top">Stop the build process if the command exits with a
- return code other than <code>0</code>. Defaults to false</td>
- <td align="center" valign="top">No</td>
- </tr>
- </table>
- <h3>Examples</h3>
- <pre> <cvs cvsRoot=":pserver:anoncvs@cvs.apache.org:/home/cvspublic"
- package="ant"
- dest="${ws.dir}"
- /></pre>
- <p>checks out the package/module "ant" from the CVS
- repository pointed to by the <code>cvsRoot</code> attribute, and stores the files in "<code>${ws.dir}</code>".</p>
- <pre> <cvs dest="${ws.dir}" command="update"/></pre>
- <p>updates the package/module that has previously been checked out into
- "<code>${ws.dir}</code>".</p>
-
- <pre> <cvs command="-q diff -u -N" output="patch.txt"/></pre>
-
- <p>silently (<code>-q</code>) creates a file called <code>patch.txt</code> which contains a unified (<code>-u</code>) diff which includes new files added via "cvs add" (<code>-N</code>) and can be used as input to patch.
- The equivalent, using <code><commandline></code> elements, is:
- </p>
- <pre>
- <cvs output="patch">
- <commandline>
- <argument value="-q"/>
- <argument value="diff"/>
- <argument value="-u"/>
- <argument value="-N"/>
- </commandline>
- </cvs>
- </pre>
- or:
- <pre>
- <cvs output="patch">
- <commandline>
- <argument line="-q diff -u -N"/>
- </commandline>
- </cvs>
- </pre>
- <p>
- You may include as many <commandline> elements as you like.
- Each will inherit the <code>failonerror</code>, <code>compression</code>, and other "global" parameters
- from the <code><cvs></code> element.
- </p>
-
-
- <pre> <cvs command="update -A -d"/></pre>
- <p>Updates from the head of repository ignoring sticky bits (<code>-A</code>) and creating any new directories as necessary (<code>-d</code>).</p>
- <p>Note: the text of the command is passed to cvs "as-is" so any cvs options should appear
- before the command, and any command options should appear after the command as in the diff example
- above. See <a href="http://www.cvshome.org/docs/manual/cvs-1.11.7/cvs.html" target="_top">the cvs manual</a> for details,
- specifically the <a href="http://www.cvshome.org/docs/manual/cvs-1.11.7/cvs_16.html" target="_top">Guide to CVS commands</a></p>
- <hr>
- <p align="center">Copyright © 2000-2003 Apache Software
- Foundation. All rights Reserved.</p>
-
- </body>
- </html>
|