Re: Yet another linux filesytem: with version control

From: Larry McVoy (lm@bitmover.com)
Date: Mon Jul 23 2001 - 16:17:51 EST


> The multiple version filesystem (mvfs) of ClearCase gives a
> transparent acces to the data. I found this feature cool, but the
> overall system is too complex. I would like to write an extension
> module for the linux kernel to handle version control in a simply way.

Having been through this a time or two, a few points to consider:

a) This is a hard area to get right. I've done it twice, I told Linus that
   I could do it the second time in 6 months, and that was 3 years ago and
   we're up to 6 full time people working on this. Your mileage may vary.
b) Filesystem support for SCM is really a flawed approach. No matter how
   much you hate all SCM systems out there, shoving the problem into the
   kernel isn't the answer. All that means is that you have an ongoing
   battle to keep your VFS up to date with the kernel. Ask Rational
   how much fun that is...
c) If you have to do a file system, may I suggest that you clone the SunOS
   4.x TFS (translucent file system)? It's a useful model, you "stack" a
   directory on top of a directory and you can see through to the underlying
   directory. When you write to a file, the file is copied forward to the
   top directory. So a hack attack is

           mount -t TFS my_linux /usr/src/linux
        cd my_linux
        hack hack hack
        ... many hours later
        cd ..
        umount my_linux
        find . -type f -print # this is your list of modified files

   It's a cool thing but only semi needed - most serious programmers already
   know how to do the same thing with hard links.

More brains are better than less brains, so welcome to the SCM mess...

-- 
---
Larry McVoy            	 lm at bitmover.com           http://www.bitmover.com/lm 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Jul 23 2001 - 21:00:17 EST