You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Brad Appleton <br...@bradapp.net> on 2004/03/23 17:13:12 UTC

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

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 <br...@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