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

Re: First impressions...

From: Marcus Comstedt <marcus_at_mc.pp.se>
Date: 2002-01-25 19:27:35 CET

Greg Hudson <ghudson@MIT.EDU> writes:

> I've thought about how to do a direct mapping to the filesystem, and
> I came up with a fairly simply idea: if REPOS is the path to the
> repository, then REPOS/1 is the first revision, REPOS/2 is the
> second revision, and so on. Inside a revision, you can have a relative
> symlink back to a previous revision for an unchanged file or
> directory. Files can contain raw contents or diffs against some
> other path. When you're doing a commit, you build up a new rev in
> REPOS/some-id-string, and when you're ready to finalize the commit
> you merge it with any commits which have been made in the meantime
> and then rename it to REPOS/3 or whatever the next number is.

You know, when I first encountered Subversion and read about the
design, about single version trees and cheap copies, and the XML
tree-delta stuff in particular, I though "Oh, they're using hardlinks.
Whenever a new version is created, new inodes are created from the
changes and up, and everything else is just hardlinked to the old
revision. Very clever."

When I found out that this was actually not the case, but an ugly db
was used instead, I was mildly shocked. :-)

If anyone want to build a new backend along these lines, I don't mind
giving a hand...

  // Marcus

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:37:00 2006

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

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