In my opinion, git is your best option when it comes to Tiddlywiki. Data will eventually get lost, sometimes saving errors will wipe out the text of a tiddler, etc, so you really want versioning. I’m not a Windows user, so if you are on Windows, I am not familiar if there is a non-technical, GUI interface for Windows to use git for those that are not comfortable with the command line, but you really should learn at least the most basic git commands. Every server I run is on Linux, and for Tiddlywiki, I have setup cronjobs to run scripts to make a commit every 6 hours to offsite git servers using Gitea git server.
You can always get away with using other tools, like rsync, then a script to make a backup zip of the rsynced changes. There are a lot of ways to do backups, even as basic as just zipping the folder, but that makes for large backups, as the entire Tiddlywiki is backedup every time rather than just the changes.
You do not want to use local backup versioning without also syncing off the machine that is running Tiddlywiki, or even that same location, such as your house. If the harddrive fails or some other catastrophic event, local backups to the same machine or same building are as useless as not backing up at all.
But, there are no built in backup functions or features in Tiddlywiki, that is up to you to do on your own.
If you use Github, Gitea or Gogs to backup offsite, all the files are fully readable online so you can recover lost data, copy and paste, etc.
Gitea - https://gitea.com
Gogs - https://gogs.io
Basic Commands:
(these are the commands for linux terminal. Not sure if it is the same on Windows terminal)
Setup your commit info:
Add Name to Config
git config --global user.name "<your firstname> <your last name>"
Add Email to Config
git config --global user.email <your@email>
Initialize your New Git:
change to the “tiddler” folder of your Tiddly server and type:
git init
Stage all files for versioning
git add .
Commit Changes with date message
git commit -m "$(date -R)"
I would recommend pushing the changes to a remote git server.
I use my own git server running Gitea. If you use a remote server,
you want to add the server info to your local git. Not going to go into
the setup of the server or the generation of ssh keys. There is plenty
of info online for how to do this, and you find more info in Gitea and Gogs
documentation.
In the same “tiddler” directorty, type the following:
Add Remote Server to git
git remote add origin ssh://git@<remote address>:<remote port>/path/to/your.git
Push Changes
git push -u origin master
I would create a backup script that does these commands all at once:
cd <path to your tiddler folder>
git add .
git commit -m "$(date -R)"
git push -u origin master
And schedule it to run at intervals, like very 6 hours, etc. It will only make a commit
if there are actual changes.