Julio Guerra
Julio Guerra

Reputation: 5661

Git for personal backups?

I am looking for a way (not a service, a (set of) tool(s)) to make personal backups (mostly photos & videos) using a solution existing in whatever OS. That's why git sounds interesting.

The thing is that I don't want to keep track of everything pushed in the repository, I would like to disable the versioning functionality so that when I delete a photo and sync the folder with my server, this photo is actually deleted and not saved in revision n - 1.

Is there any way to do this with git? Or maybe do someone know a good multi platform & open source solution for backups?

Thank you.

EDIT

Of course, it would be for more than 2 Gb (right now 400Gb) of data. Meaning I don't want to pay for a cloud service. I can host it on my own server.

Upvotes: 3

Views: 4195

Answers (8)

usered
usered

Reputation: 15

git-annex looks relevant. It stores only hashes of files in git repository, while actual files content are stored in different backends. So it allows managing files with git and still being able to "drop" some files from backup completely (you have to drop it from all backends where it is stored. Usually annex will try to preserve you from doing so, but all you need is --force flag)

Upvotes: 0

Red-Roo
Red-Roo

Reputation: 11

rsync has been mentioned, but if you want versioning too, then look at rsnapshot.

Upvotes: 1

Squirrel
Squirrel

Reputation: 11

I use 2gb free ZenOK Online Backup has is good tool to store my photos from work, it works and I don't have to worry about burning DVDs or buying an external hard drive.

Upvotes: 1

Karl
Karl

Reputation: 706

As an alternative to rsync, Unison works pretty well for bi-directional sync-ing

Upvotes: 2

manojlds
manojlds

Reputation: 301637

It is possible to remove a file completely from a git repo:

git filter-branch --index-filter 'git rm --cached --ignore-unmatch deleted_image.jpg' HEAD

Too much hassle for a personal backup though.

You can use something like robocopy in the backup mirror mode.

Mirror A to B, destroying any files in B that are not present in A (/MIR), copy files in restartable mode (/Z) in case network connection is lost:

Robocopy C:\A \\backupserver\B /MIR /Z

http://en.wikipedia.org/wiki/Robocopy

Or rsync can be used. Use --delete option while mirroring.

http://www.abbeyworkshop.com/howto/unix/nix_rsync/index.html

Upvotes: 3

chrisl-921fb74d
chrisl-921fb74d

Reputation: 23222

Try Sugarsync.com too. It's got 5gb of free storage; similar to dropbox.

Upvotes: 2

Matt Kline
Matt Kline

Reputation: 10507

Dropbox is a great service for doing what you describe. Basically, it keeps a folder synced with an online backup. It also allows you to sync files across multiple computers or view the files online.

Upvotes: 2

Jean-Philippe Pellet
Jean-Philippe Pellet

Reputation: 60016

Instead of git, you might want to look at rsync for that kind of tasks.

Upvotes: 8

Related Questions