[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

SVN, AccuRev and BitKeeper (was Re: branching several times a day)

From: Brad Appleton <brad_at_bradapp.net>
Date: 2004-03-23 18:13:12 CET

On Tue, Mar 23, 2004 at 10:48:03AM -0600, Brad Appleton wrote:
> One thing I find interesting in all of this is the different
> approaches exemplified by SVN, Accu-Rev and Bitkeeper:
>
> - In SVN, branches and labels (tags) are both working-copies.
> One can take the POV that "everything is a copy" and branches
> and workspaces are equivalent in that regard.
>
> - In Accu-Rev, the overarching concept is that of the "stream"
> (e.g., branch or codeline). In essence, everything is a stream.
> A workspace is an instance of a stream. A label is simply a
> "static" stream.
>
> - In Bitkeeper, the overarching concept is that of the "workspace".
> In essence, a workspace is a first-class repository. Hence you
> automatically have "private versioning" where you can checkin
> private versions without making them visible to others, but
> without having to branch. Branching doesn't happen until you
> "pull" a change from another workspace, and then it only takes
> place for the files that had true parallel activity. Change-sets
> are supported, but labels are different beasts from workspaces
> or branches or change-sets.

So, to summarize it seems that regarding branches/streams,
workspaces, and labels/tags, the above three can be
oversimplified just a tad as follows:
 - SVN: branches and tags are both just workspaces - all are equivalent
 - Accu-Rev: branches and tags are both "streams"; workspaces are separate
   but related (and configured with one or more streams)
 - BK: workspaces are "branches" since they're 1st-class repositories;
   labels are separate from both of them.

ASCII art time (okay - a "table" is not really "art")

           | Workspaces | Codelines | Baselines |
-----------+------------+------------+------------+
Subversion | Equivalent | Equivalent | Equivalent |
-----------+------------+------------+------------+
Accu-Rev | DIFFERENT | Equivalent | Equivalent |
-----------+------------+------------+------------+
BitKeeper | Equivalent | Equivalent | DIFFERENT |
-----------+------------+------------+------------+

-- 
Brad Appleton <brad@bradapp.net> www.bradapp.net
  Software CM Patterns (www.scmpatterns.com)
   Effective Teamwork, Practical Integration
"And miles to go before I sleep." -- Robert Frost
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Tue Mar 23 18:17:24 2004

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.