Hans Reiser wrote: >: > > > > I am skeptical that having it occur with every >write is desirable actually. > > Consider the case where you type cat file1 >> file2. This will produce a version of file2 for every 4k that is in file1, because (well I didn't look at the bash source, but I would guess) it appends in 4k incremental writes rather than one big write. Versioning on file close makes more sense, but I suggest manual control using the ..../checkin pseudofile, and then we can reasonably make it the default plugin for the whole FS (write it so that it calls the other plugins so that when we change the other plugins we don't need to change your code to do it). People who don't want versioning will simply never touch the checkin pseudofile. Make sure that for that case there is just an if statement condition check as overhead, and there will be no reason to not make versioning the default plugin that happens to do nothing unless you use the checkin pseudofile at least once during the life of the file.
hmm, maybe ..../snap is better than ..../checkin ? Well, let's decide that once the code is written....;-) Do you agree with my points here? Hans