On Monday 13 March 2006 13:43 Markus Karg wrote:
> I didn't actually get what your tool is good for (I understand what it
> aims, but I do not understand the benefit it brings compared to just
> keeping my whole disk mirrored in a SVN repository). Can you explain what
> the benefit is?
It does mirror the disk in a SVN repository.
But not via the svn command line utility (which I believe you use), but via
the fsvs program, which is another client which can be used against a
subversion repository.
(Hooray for the pluggable subversion structure :-)
The differences between the svn client and fsvs are:
- fsvs keeps the modification timestamp, the owner, group and access mode
of your files in the repository, and restores them on update/export.
- svn is restricted to files, directories, and symlinks; fsvs does device
nodes too.
- The svn client needs the .svn-directories, with the full-text of your
text-base in them; that means 4x the inodes, and >2x the space needed
in your filesystem.
Because of that is FSVS faster (at least IMO, I didn't benchmark it
against svn); it's sometimes faster than a find, because it has the nodes
sorted by inode in it's datafile, and so can drive the disk in a nearly
linear fashion, whereas svn fetches information for *many* files, which
pollute the file and inode cache, ...
- There is some resistance in svn against including full-meta-data versioning;
the arguments are code bloat and maintenance.
As fsvs won't do many of the tasks subversion does, it has a much smaller code
size; and (IMO) is much cleaner, too.
The code that deals with setting the executable bit in subversion is
distributed (in the form of functions calls) in a lot of client commands;
there's update, checkout, export, diff, repos-diff, and so on.
In fsvs I'm careful to have a few more if-statements in the correct places,
but avoid many code duplications (see eg. - I use the same functions in
export and update. Although I have to admit that shared functions have to be
moved to a seperate file (they will)).
If nothing else, the first three points above make fsvs the clear winner in a
comparision against svn - that's why I wrote it :-)
Hope that helps!
Regards,
Phil
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Mar 13 18:12:46 2006