SPUG: Version control white paper

Andrew Sweger andrew at sweger.net
Thu Oct 25 11:27:52 CDT 2001

I'm not sure if the inner workings of CVS would apply as well to versioned
database objects. The traditional inner workings of CVS are based on rcs
(co, ci), diff, and ed. Those man pages give some information on the
revision file format (all those *,v files in the repository). There is a
project working on building a replacement of CVS called subversion that
may change some of these internal semantics (maybe).


It goes way beyond CVS and trys to answer those, "Why can't CVS do this?,"

The method of database object versioning that I have seen involved using a
pair of columns (fields) to bracket the period for which a row (record) is
valid. Usually these are date/time fields. There are several strategies
depending on an applications needs. I can try to explain more separately
if your interested.

At one time PostgreSQL had built in support for record versioning that
permitted rolling back the state of the database with respect to time. I
think this may have been dropped in recent versions in lieu of

On Thu, 25 Oct 2001, Peter Darley wrote:

> 	I'm putting together a system with perl/postgresql that will need to have a
> good mechanism for maintaining multiple versions of database objects, which
> is something that is quite new to me.  I have been searching the net to find
> a white paper explaining the inner workings of CVS, without describing the
> actual code implementation, and have drawn a blank.  I was hoping that
> someone on this list could point me to such a thing, or to any white
> paper/algorithm discussion of other version control systems.

Andrew B. Sweger -- The great thing about multitasking is that several
                                things can go wrong at once.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
     POST TO: spug-list at pm.org       PROBLEMS: owner-spug-list at pm.org
      Subscriptions; Email to majordomo at pm.org:  ACTION  LIST  EMAIL
  Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
 For daily traffic, use spug-list for LIST ;  for weekly, spug-list-digest
     Seattle Perl Users Group (SPUG) Home Page: http://zipcon.net/spug/

More information about the spug-list mailing list