I've been building a tool that puts a MultiValue account under real version control. It runs on UniData and UniVerse today, and it's built to port to any MV system — the engine sits on a deliberately narrow set of record primitives, so a new platform means implementing that handful, not the tool. jBASE is in active development — its test suite is passing and I expect it in 2.1.
What it does. It commits the account's own records directly to git objects — your records, your dictionaries, your VOC. The live account is the working tree, so there's no export copy drifting out of step and no import step to forget. Change a record, GIT STATUS shows it changed.
Both surfaces work. From the shell it's udt-git / uv-git, taking the same subcommands and flags as stock git. From inside a session it's a cataloged GIT verb — GIT ADD -A, GIT COMMIT -m "...". Since 2.0.0 both commit identical bytes, which took longer to get right than everything else put together: a dictionary isn't stored the way it's held, and each side had its own opinion about that.
Installing is a tarball and a script:
tar xzf mv_git-2.0.1-udt-linux-x86_64-le.tar.gzcd mv_git./install.sh
On EL8 you'll need libgit2 from EPEL first — dnf install epel-release && dnf install libgit2_1.7 — the base 0.26 is far too old. UniVerse is the same shape with the -uv- tarball; it runs the git work in a background process, because UniVerse gives BASIC no in-process route to libgit2.
Because it's portable, it's also a migration path. An account committed on UniData rebuilds as a live account on UniVerse, and vice versa — the portable form carries the dictionaries and file controls, not just the data. That's what makes the jBASE work worth doing: it's another platform accounts can move between, not just another place to run git.
A demo account to try it against, so you don't have to point it at your own data first:
github.com/mvx-lang/demo
udt-git clone https://github.com/mvx-lang/demo.git mydemo
It's a real MultiValue account kept in the portable format — clone it on UniData or UniVerse and you get a live account with clients, orders, inventory and staff, dictionaries and all.
Longer write-up — how it handles dictionaries, and what it costs: heydon.consulting/articles/git-pick-world
Releases: github.com/mvx-lang/mv_git/releases/latest
GPL-2.0, and I'd genuinely like bug reports — particularly from anyone running it against a real account with unusual dictionaries.