I use the Node version, and keep my wiki files in a git repository. I don’t try to track every individual save back to the server, but I frequently commit and push my work to git, using a short description. Separately, I will run a command to either build
or release
the wiki, which will call the Node code to generate either my “latest” version or the main one (with a backup tracked by version number.) My current process requires me to also commit and push after doing this; someday I might automate that, but it hasn’t seemed onerous. Eventually, I’d like to add the ability to do these actions from within the wiki; that should be doable from a Node environment, but for now the command line is fine for me.
A small project I spent a little bit of time on six weeks ago, and then came back to this past weekend has these commits:
2024-08-27 @ 03:07:12: "Add first page of Current Relational stuff"
2024-08-26 @ 23:40:54: "Fix block-level issue, properly nest CSS"
2024-08-26 @ 02:44:11: "Add TODO for uncertain content"
2024-08-26 @ 02:30:46: "Increase the font size of the notes"
2024-08-26 @ 01:39:25: "Complete first pass of Overview"
2024-08-25 @ 20:41:06: "Change background color of notes"
2024-08-25 @ 20:37:55: "Push latest"
2024-08-25 @ 20:32:02: "Start overview"
2024-07-10 @ 02:54:58: "Fix tids2table to also use the better field/column handling"
2024-07-10 @ 02:02:25: "Add Country handling, fix field-table"
2024-07-09 @ 12:31:59: "Adding non-working virtual countries code"
2024-07-08 @ 23:45:29: "Add release 0.1.2"
2024-07-08 @ 23:31:00: "Add minor fixes from initial announcement"
2024-07-08 @ 01:02:11: "Fix broken example with help from etardiff"
2024-07-07 @ 21:15:47: "Merge branch 'main' of https://github.com/CrossEye/TW5-SQL_Playground"
2024-07-07 @ 21:15:37: "Add database-as-tiddlers file"
2024-07-07 @ 20:57:08: "Create README.md"
2024-07-07 @ 20:55:41: "Start this off"
Each one has a link to all the tiddlers and other files changed. I can whenever I choose, easily recover the code from any one of these commits. I don’t do so often, but working this way makes it much easier to be willing to break things as I make changes; it tends to lead me toward much faster development.
This is very much a developer’s workflow. I would love to find/create tools to make these features available to a non-coder audience. But I’ve yet to spend much time on it.