>I think our problem is that we look at FV from different angles. I look >at it from the point of view of people who have NEVER used FV, and you >look at it from the view of people who have ALWAYS used FV.
That's certainly a part of it. It's interesting reading this discussion, as someone who used VMS heavily through about the mid-1980s & then became a UNIX sysadmin. File versioning was one of the items I really missed. There are a lot of interesting use cases (walk away from terminal, come back, quit emacs, get prompted whether to save file -- go ahead, save it, use 'diff' to determine what changed, and then delete the newly written file version if the changes are unwanted). Directory pollution really turned out not to be an issue in practice, perhaps because the default version limit was relatively small (3 in VMS). It could be set per-file or (IIRC) per-directory. If someone didn't want versioning at all, they could just set their directory to use one version, and old versions simply didn't exist. Alternatively, to see just the most recent versions, ';' would refer to the most recent version, so 'dir ;' showed only the filenames and no old versions (going from memory here). Having a delimiter character really did help. On UNIX, we have '/', though POSIX prohibits, or at least highly discourages, its use. Mac OS X uses '/' to access named forks (aka named streams, aka extended attributes in the Solaris sense). If I do 'ls xyz' I see just xyz. If I do 'ls xyz/rsrc' and xyz has a 'resource fork' then I see that. No real reason why I couldn't do 'ls xyz/versions', or, preferably, 'ls -V' :-) and see versions. 'diff xyz xyz/-1' would diff xyz with its immediately preceding version; 'diff xyz xyz/2' with version 2. (This would be interesting to prototype and do some usability testing.) I agree that we want a clean interface, that versions should be optional, and that they should be exposed via the network. (My home directory is NFS-mounted.) While disk space is not irrelevant, quotas really help in the multi-user scenario. If someone is close to their limits, they can use 'purge' (VMS syntax) to remove old versions of their files, or delete specific versions. I don't agree that version control systems solve the same problem as file versioning. I don't want to check *every change* that I make into version control -- it makes the history unwieldy. At the same time, if I make a change that turns out to work really poorly, I'd like to revert to the previous code -- not necessary the code which is checked in. (I suspect there may be some versioning systems which allow intermediate versions to be deleted, and I just haven't used them, but this still seems complex compared to only checking in known-good code.) This message posted from opensolaris.org _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss