Subject: Re: a few questions about cvs
From: Robert Collins <[email-masked]>
To: [email-masked]
Cc: nigel gray <[email-masked]>
Date: 05 Jul 2003 10:14:46 +1000

On Sat, 2003-07-05 at 00:20, Igor Pechtchanski wrote:

> 
> Nigel,
> 
> A local checkout of a cvs repository is no different than an extracted
> source tarball (except for the "CVS" subdirectories where cvs stores its
> administrative information).  

Igor, this is not true in the general case. source tarballs often have
extra files, and more precise date stamps that CVS checkouts. For
instance, the cygwin setup source tarballs have correctly order date
dependencies on Makefile.am, Makefile.in, configure, configure.in etc. A
CVS Checkout will be missing Makefile.in and configure, (and when we had
those files in CVS, the dates where often the same, leading to them
being unnecessarily regenerated). Another class of files often in source
tarballs but not revision controlled (aka in CVS) is generated
documentation - say html made from .info, that the authors want everyone
to just get, and only have to need the appropriate tool chain if they
alter the documentation source.

> IOW, you should be able to just checkout the
> source from the repository (using a "cvs -d REPOSITORY checkout MODULE"),
> adapt it to your system (either by running "configure", if the project
> uses it, or by editing some header, which may not be necessary for a
> really portable project), and then run "make" and "make test".

You should read the README and INSTALL for the project. Often they will
also have a 'using CVS for developing X' page or document, which may
refer you to autoreconf, or ./bootstrap.sh. Follow the projects
directions... and you should be fine.

Lastly, there is usually a pattern of branches to the development, where
there may be a branch that is the latest stable version, and HEAD being
unstable - so something similar. So, you could grab the latest stable
version, and get CVS fixes for that, without suffering the unstable
bugs. This depends very much on how each individual project structures
its development...

Rob
-- 
GPG key available at: <http://members.aardvark.net.au/lifeless/keys.txt>.