On Thu, Oct 25, 2018 at 05:32:52PM -0700, David Christensen wrote: > > I did Fortran programming on VAX/VMS machines back in the 1980's. Its > file versioning feature was a godsend [1][2]. I want that on my Debian > machines. > > 2018-10-25 17:28:29 dpchrist@vstretch ~ > $ apt-cache search versioning file system > copyfs - Versioning filesystem for FUSE > davfs2 - mount a WebDAV resource as a regular file system > dvcs-autosync - Automatically synchronize distributed version control > repositories > fsvs - Full system versioning with metadata support > fusedav - filesystem to mount WebDAV shares > incron - cron-like daemon which handles filesystem events > python-migrate - Database schema migration for SQLAlchemy - Python 2.7 > python-migrate-doc - Database schema migration for SQLAlchemy - doc > python3-migrate - Database schema migration for SQLAlchemy - Python 3.x > > > Has anybody tried copyfs, fsvs, or anything else with file versioning?
The problem with fsvs and copyfs and other FUSE-based things is that they tend to be slow, so slow that you don't want to put major chunks of your system in them. On the other hand, it's usually easy to make whatever editor you habitually use hook into a versioning system for every save: emacs git-auto-commit-mode vim vim-auto-commit or fugitive atom Git-Plus and it turns out that Microsoft open-sourced Visual Studio Code and it has git support built-in. On the other hand, if you want a system that is fast and can handle everything, not just what you are working on right now, you could - install rsnapshot and have it do automatic periodic backups, like once an hour - use ZFS and tell it automatically make snapshots, maybe even once an hour (syncoid/sanoid are your friends here). -dsr-