RE: VOTable software list

From: Alasdair Allan <aa-at-astro.ex.ac.uk>
Date: Wed, 4 Feb 2004 14:37:25 +0000 (GMT)

Dave Giaretta wrote:
> Ed Shaya wrote:
> > Alasdair Allan wrote:
> > > But all the rest of the VO projects have their own CVS, and if we
> > > check our code into your CVS we loose the versioning information
> > > from our own archives up to that point. That isn't really optimal.
> >
> > Why do you say that? The version numbers are not held in your update
> > directory it is held internal to each CVS repository. There is no
> > reason to be concerned if the version number in the NVO repository is
> > different from the one in your local one. It is reasonable to commit
> > changes into your local CVS more often and only when you have the next
> > stable version should you commit to the nvo.gsfc CVS. This makes it
> > really easy for everyone else to plugin new versions of your modules
> > into their projects.
>
> Good grief!

I've got to go with Dave on this one, I'm sorry, but you seem to have a very odd idea what CVS is for...

It's not the version numbers I'm worrying about its the revision history, the entire point of CVS is as a version control system, and the ability of developer to revert to previous versions of the sources. The source code for a project should never be stored in more than one CVS repository.

Checking in 3rd party sources to a CVS archive is only useful if you're going to make modifications to those sources, effectively forking the 3rd party project away from its current developers.

CVS is not a fancy way for distributing the source code to the masses, CVS is for developers to control development.

It can be used to distribute bleeding edge source, but that is not, and never should be, its primary purpose.

Additionally, even if we did what you suggested you loose functionality. Since CVS tags each file with a version number its very easy to write automated installation and build scripts which require a specific version of a package, or even a specific file. If you have people getting the source from two different archives, both have which have different version numbers for the files, you break this...

Which is then the "master" copy of the source?

There is no such thing as a "local" CVS, the CVS repository the source code resides in is the master copy of the source.

There should never be developer and release CVS archives, this is what branches and tags are for, you should never check 3rd party sources into your CVS tree unless you intend branching the sources away from their current maintainers, this is what build scripts and anonymous access to thr 3rd party CVS archive is for.

The whole idea totally goes against the CVS paradigm.

Al.

-- 
Dr. A. Allan, School of Physics, University of Exeter
Received on 2004-02-04Z15:38:14