The only catch is that you have to make sure to back up the (metadata-only) git repository itself also, and maintaining this backup on anything that is not a direct filesystem is painful.
[1] Through my tool, glacier-cli, for which git-annex has native support.
[2] I wrote ddar and the git-annex support for it.
git clone /my/repo /tmp/backup-git-annex
tar cvf /tmp/backup-git-annex.tar /tmp/backup-git-annex
That way, you're left with a single tar file to backup.> git-annex is not a backup system. It may be a useful component of an archival system, or a way to deliver files to a backup system
With this in mind, can we treat it as a backup tool? Assuming backing up the git repository itself as you mentioned.
- New photos live on my laptop (in my Dropbox and covered by Backblaze)
- I manually copy photos from my laptop to a RAID array on a server elsewhere in my house when I'm done editing/processing them
- The server backs up the photos to S3
S3 is the last bastion, so to speak. I expect that normally, I pull any photos I need back off my server. But the house burns down, I go to S3.
I run a cron job on my backup server that picks up all changed files (in my photo storage dir) and pushes them to S3 with s3cmd[1]. It's a pretty 'dumb' process, but works well.
The S3 <-> Glacier lifecycle stuff is pretty cool, so the plan is to eventually enable it to deep-archive older photos.