Richard Guenther wrote:

> On Wed, 09 Feb 2005 00:11:54 -0500, Daniel Berlin <[EMAIL PROTECTED]>
> wrote:
>> (Thanks very much to Al Stone of HP for hosting the test repo on
>> toolchain.org!  This would not have been possible without him)
> 
> Tried it, including builting svn on a Debian woody machine without
> root access and
> problems.  The only thing I noticed is that a checked out HEAD is now
> 784MB instead
> of 280MB with CVS.  Is there a way to have "cheap" multiple

This is because of the 'text-base' - svn keeps pristine copies of the
checked-out version locally, which makes diffing your local mods a local
operation (and correspondingly, makes it much faster), lets it send only
diffs on the network, lets 'svn status' ignore files that were touched but
not really modified, etc. There's a tradeoff in disk space, but it's
generally a good one in these heady days of 50Â/GB disk space :-)

> development trees, like
> cp -Rl the whole thing and svn is still happy?  I usually have about

You may want to pose this question on the svn list, but I don't see any
immediate reason that wouldn't work. svn is (as far as I know) using the
unlink()/rename() approach to ensure robustness, which should also make it
hardlink-friendly. The savings will tend to degrade over time though, since
doing svn up on each folder would break the linking for files in which it
receives modifications (even if each tree gets the same modifications) -
but I expect you knew that.

> 10 gcc trees
> lying around, half of them being "different" HEADs - and 8Gb instead
> of 3Gb counts,
> even in the days of el-cheapo disk-space.

You might also find a client like svk serves your needs better - as part of
supporting disconnected operation, it takes a different tack on this
matter. Instead of keeping a text-base in the working copy, it keeps a
local mirror of part or all of the repository (which can be partial in both
layout and time - 'only includes module/portion/*' and/or 'only includes
revisions N-HEAD'). This mirror of the repo can then be used to support
multiple working copies, each of which is then entirely pristine (svk even
keeps its admin data about what revisions are checked out to each WC
elsewhere, not in subfolders). And it can commit right back to the
upstream.

> Richard.

Reply via email to