Git and dropbox
This blog is in a git repository and I push it to a remote repository on my server. That means I can always go back to a previous version, even if my computer breaks. Even so, I like the idea of having a backup.
Backing up a git-repository to Dropbox #
Git and Dropbox don’t play together nicely so I don’t have my git-repositories in Dropbox. Instead I create a zip-file to the Dropbox each time I commit something.
The nice thing is that Git makes this really easy! Just create a post-commit
file in the .git/hooks
directory, make it executable (chmod +x post-commit
) and add the following:
#!/bin/sh
echo "Running post-commit"
d=`date -j "+%Y%m%d_%H-%M-%S"`
exec git archive -o "/Users/username/Dropbox (Personal)/your-backup-folder/"$d.zip head
This creates zip-files with the filename of the current date/time (20180303_18-32-58.zip
).
Pros #
- Automatic backup: I don’t have to think about it
- Backups make sense: a commit is a nice time to backup
- Respects
.gitignore
: no useless files are backed up
Cons #
- The backup becomes huge: there are no increments or auto-deletions
- Only the files of the current head gets backed up: no git-settings, other branches, tags, etc.
- Dropbox is not a real backup tool: somebody with access to my Dropbox can delete the files
Looking forward to hearing other people’s ideas on this!