20

I am working with lots of text files daily and I use Dropbox as a way to restore earlier versions of files in case something goes wrong.

I am looking for simple way to suplement/replace Dropbox in that function in case my Internet connection goes off and Dropbox is not working. Basically, I would like use git to:

1) Automatically save every revision of every file on disk or in given folder, but limited to certain extensions (.html, .tex, .txt, .doc, .odt etc.)

2) Easily browse previous versions and restore them. Ideally, I would be able to choose destination folder for keeping revisions

Creating a new Git project for each file is not very good idea, so I am looking for something simpler that will just re-create folders structure with an option to restore previous versions.

Rafal
  • 1,837

3 Answers3

23

How about using SparkleShare?

SparkleShare is intended for synchronizing projects between multiple contributors automatically using Git. You can use it basically as a tool for automatically saving changes to files it a version controlled Git repository, and don't need to use its multiple contributor features.

It will connect to various services, including BitBucket:

SparkleShare Setup

Here you can see the history it presents of a folder:

Recent Changes

SparkleShare only saves changes and keeps a list of the changes. There is no way (that I know of) to use it to view a file at a particular commit. Clicking on the file in the Recent Changes dialog just opens the newest version.

So, you can use a Git client, such as Giggle Install giggle to view changes at particular commits:

Giggle

However, Giggle will not let you view the actual file at a particular commit, instead forcing you to view changes. So, you might want to use a different client such as gitg Install gitg:

gitg

(The black everywhere is a bug because I'm using the GNOME 3.8 PPA.)

You can install SparkleShare by clicking on this button:

Install via the software center

Or, you can use this command in a terminal:

sudo apt-get install sparkleshare
iBelieve
  • 5,434
11

If you're looking for an advanced backup tool, I'd recommend Back In Time Install backintime-gnome.

enter image description here

You can configure it in many, many ways, but here is how I use it:

  • Take a snapshot every hour
  • Keep hourly snapshots for the past 24 hours
  • Keep daily snapshots for the past 7 days
  • Keep weekly snapshots for the past 4 weeks
  • Keep monthly snapshots for the last 24 months
iBelieve
  • 5,434
-1

If you use Linux, you can try Btrfs file system, it has wonderful backup functionalities.

If you move to FreeBSD or OpenIndiana you can use XFS.

btreus
  • 11