I used to use rsync to do backups, but then I switched to rdiff-backup to incremental backups.

Recently, I discovered git and bzr while working on a coding project.

So, I was thinking, I could have my backup disk be a repository in either git or bzr. Then I could rsync to the repository, and commit the changes.

Would there be any performance concerns with this? Any other issues that I'm not thinking of?

The benefit I see in using rsync is that you can restart an interrupted transfer, while rdiff-backup reverts to the last version, and then starts again. Any reason not to do it this way? Anything I'm not thinking of?

  • 1
    You don't need rsync if you're already using a VCS - both bzr and git are perfectly capable of syncing your working copy with a remote repository. See git push for details. – Sergey Aug 16 '12 at 20:35

tl;dr There are advantages and disadvantages.

Advantages of VCS:

git and bzr let you restore to any version you pushed to the repository and lets you selectively exclude files and only add files to the VCS that you need. You can exclude /tmp and various dot-folders in your home directory (I don't recommend excluding ~/.gnupg and ~/.gnome2/keyrings as these have important data).

Disadvantages of VCS:

bzr and git store diffs of all changes so every time you push a new change, the repository software needs to calculate and store a diff, which takes space and CPU power. With binary files, it's even worse since even a 2KB change in a 2GB file will prompt the storage of another copy of that 2GB file, unless your repository keeps track of changes in small blocks for binary files, or uses some form of bindiff, where even shifts in the file don't cause trouble.

Make your choice. If you need any assistance with this, drop a comment right below.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.