Yes, subject to the cross app dependencies and data tables exceptions you noted. I use a local git repository as a code backup for my projects where I feel a backup of my own is important.
For data table backup, you can use Anvil uplink to create a local SQLite backup. See Backup to SQLite via Uplink for an approach and sample code.
Restoring is another issue, but that would at least give you a backup of the data.