Re: subversion vs cvs (Was: Re: linked list rewrite)

From: Dustin Sallings <dustin(at)spy(dot)net>
To: Frank Wiles <frank(at)wiles(dot)org>
Cc: sailesh(at)cs(dot)berkeley(dot)edu, "Marc G(dot) Fournier" <scrappy(at)postgresql(dot)org>, pgsql-hackers(at)postgresql(dot)org, neilc(at)samurai(dot)com
Subject: Re: subversion vs cvs (Was: Re: linked list rewrite)
Date: 2004-03-24 18:09:08
Message-ID: 57F387F2-7DBE-11D8-8B80-000393CFE6B8@spy.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers


On Mar 24, 2004, at 7:29, Frank Wiles wrote:

> [cool feature list]

Arch has all of that except for the checking out part of a directory
thing (would you really just check out the backend, submit a change,
and not build and test it?).

Additionally:

* Repositories can be easily replicated so checkouts don't have to
cross slow networks. I replicate every repository I work with to every
machine I use. This is not only my backup strategy, but it makes
checkouts faster.

* You can work completely offline. In addition to being able to diff,
undo changes, redo changes, etc... while offline, you can completely
branch a project do multiple commits, and merge them back into the main
archive when your plane lands.

* Branches are not only cheap, but can easily cross repository
boundaries. Any given user can create a branch from the head-of-line
tree and maintain changes, and the head-of-line maintainers can pull
those changes back in.

* Its storage is immutable. It never modifies a file so it does not
provide any possibility for corruption. This is also what makes
replication so trivial.

* Changesets have cryptographic checksums and may be cryptographically
signed. Checkouts are authenticated against both of these.

* Repositories can be accessed via a wide variety of means. Most of
mine are local file, WebDAV, or SFTP. I allow read-only access via
plain HTTP for anyone who wants to check out one of my projects.

* Files can be tracked in a nearly (or completely) automatic fashion.
Depending on project configuration, you can avoid having to interact
with the revision control system other than writing changelogs and
submitting patches. You an also use CVS-style tracking (manual adds
and deletes (plus moves)) if you're more comfortable that way.

* The design is way, way more simple and transparent, there are far
fewer requirements. At least for me, this translates to a higher
confidence that my stuff will always be available.

The advantage I see to Subversion is that it's designed to be a better
CVS. Since many people are comfortable with CVS and that style of
centralized development, it may feel a little more natural for new
converts. I feel that that's because it doesn't seem to take you very
far.

--
Dustin Sallings

In response to

Browse pgsql-general by date

  From Date Subject
Next Message CoL 2004-03-24 18:23:45 Re: case statement as inline function?
Previous Message Bill Moran 2004-03-24 18:03:47 Re: partial VACUUM FULL

Browse pgsql-hackers by date

  From Date Subject
Next Message Richard Huxton 2004-03-24 18:53:07 LOOK - KITTENS! (was Re: pg_advisor schema proof of concept)
Previous Message Tom Lane 2004-03-24 18:02:18 Re: pg_advisor schema proof of concept