<html>
  <head>
    <title>CVS Access to Expat</title>
    <link rel="STYLESHEET" href="../style.css" type="text/css" />
  </head>
  <body marginwidth="0" marginheight="0">
    <table cellspacing="0" cellpadding="0" width="100%">
      <tr>
        <td class="corner"><a href="../"><img src="../expat.png"
                                              border="0"/></a></td>
        <td class="banner"><h2>CVS Access to Expat</h2></td>
      </tr>
      <tr>
        <td class="navbar">
        </td>
        <td class="content">

<h3>View CVS Online</h3>

<ul>
  <li><a href="http://expat.cvs.sourceforge.net"
     >Browse online.</a></li>
</ul>

<h3>Anonymous CVS Access</h3>

<p>The Expat CVS repository can be checked out through anonymous
(pserver) CVS with the following instructions.  The module you wish to
check out must be specified as the <i>modulename</i>. When prompted
for a password for <i>anonymous</i>, simply press the Enter key.</p>

<pre>
cvs -d:pserver:anonymous@expat.cvs.sourceforge.net:/cvsroot/expat login

cvs -z3 -d:pserver:anonymous@expat.cvs.sourceforge.net:/cvsroot/expat co <i>modulename</i>
</pre>

<p>Updates from within the module's directory do not need the -d
parameter.</p>

<h3>Developer CVS Access via SSH</h3>

<p>Only project developers can access the CVS tree via this method.
SSH1 must be installed on your client machine.  Substitute
<i>modulename</i> with the name of the source module you want to check
out, and <i>developername</i> with your SourceForge user name.  Enter
your site password when prompted.</p>

<pre>
export CVS_RSH=ssh

cvs -z3 -d:ext:<i>developername</i>@expat.cvs.sourceforge.net:/cvsroot/expat co <i>modulename</i>
</pre>

<h3>Source Modules</h3>

<p>There are only two source modules for Expat at this time.  They
are:</p>

<dl>
  <dt> expat </dt>
  <dd> This contains the C source code for the library, xmlwf, example
       applications, and test suite.  This is what most people will be
       interested in. </dd>

  <dt> htdocs </dt>
  <dd> The content for <a href="../">www.libexpat.org</a> is located
       in this module. </dd>
</dl>

<h3>Receiving Notification of Changes</h3>

<p>If you are interested in the low-level details of Expat's
development, it is possible to have an email sent to you for every
change made to the CVS repository via this mailing list:</p>

<ul>
  <li> <a href="http://mail.libexpat.org/mailman/listinfo/expat-checkins/"
       >expat-checkins</a> mailing list information, including how to
       subscribe. </li>

  <li> <a href="http://mail.libexpat.org/pipermail/expat-checkins/"
       >expat-checkins archives</a> are also available. </li>
</ul>

<h3>CVS Documentation</h3>

<p>There is a variety of documentation on CVS available online.  These
sources are perhaps the most useful:</p>

<ul>
  <li> <em><a href="http://www.cvshome.org/docs/manual/">Version
       Management with CVS</a></em>
       <br />
       The official manual for CVS, by Per Cederqvist and others.</li>

  <li> <em><a href="http://cvsbook.red-bean.com/">Open Source
       Development with CVS</a></em>
       <br />
       Online version of portions of Karl Fogel's book on using CVS
       for open source projects.</li>

  <li> <em><a href="http://www.cvshome.org/docs/">CVS Documentation</a></em>
       <br />
       A list of available documentation on CVS.</li>
</ul>

        </td>
      </tr>
      <tr>
        <td class="corner">
          <a href="http://sourceforge.net">
            <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=10127&amp;type=2"
              width="125" height="37" border="0" alt="SourceForge.net Logo" />
          </a>
        </td>
      </tr>
    </table>
  </body>
</html>
