SparkleShare is an open source file synchronization and collaboration tool somewhat similar to Dropbox, available for Linux, Mac OSX and Windows.
SparkleShare uses GIT version control system and can be used with code hosting services like GitHub, Bitbucket or Gitorious as well as your own server.
- presets for projects hosted on GitHub, Bitbucket or Gitorious
- a recent changes window shows who changed what
- restore deleted files or revert to previous versions
- conflict handling
- client side encryption
- optional Ubuntu AppIndicator
In previous versions there used to be Nautilus integration but unfortunately this has been removed about 2 months ago, however, everything you need is integrated into the "Recent Changes dialog":
E.g.: to restore a previous file version, from the main "Recent Changes" dialog view, click on the timestamp next to a file:
Install SparkleShare 1.0 in Ubuntu
The SparkleShare version available in the official repositories is a bit old - 0.9.0, but if you don't want to add a PPA, you can use that. Some of the changes included in SparkleShare since version 0.9.0 are: new status icons, project folders can be renamed, new GNOME 3 symbolic icon, restore previous revisions of files from the event log and other changes as well as many many bug fixes - changelog here.
SparkleShare 1.0 will most probably be available in the official Ubuntu 13.04 Raring Ringtail repositories, but it can easily be installed on older Ubuntu versions by using an unofficial PPA.
To install SparkleShare 1.0 in Ubuntu 12.10, 12.04 or 11.10, firstly add the Git stable releases PPA (the Sparkleshare PPA below depends on this PPA):
sudo add-apt-repository ppa:git-core/ppa sudo apt-get update
Then, add the unofficial SparkleShare PPA and install the latest SparkleShare 1.0 in Ubuntu 12.10, 12.04 or 11.10 using the following commands:
(some dependencies are missing, that's why there's more than one package in the install command above)
sudo add-apt-repository ppa:rebuntu16/sparkleshare+unofficial sudo apt-get update sudo apt-get install sparkleshare libwebkit1.1-cil libmono-posix4.0-cil libmono-system-core4.0-cil libnotify0.4-cil
Important: the Ubuntu appindicator icon won't show up unless you're using the "ubuntu-mono-dark" (the default Ubuntu icon theme) or "ubuntu-mono-light) icon theme! This is a known bug.
Once installed, launch SparkleShare and follow the initial setup dialog steps. To add a project, select SparkleShare > Add Hosted Project from the appindicator menu.
Adding a project hosted on GitHub, etc. is very easy: SparkleShare will create a text file with a ssh key in the SparkleShare folder which you need to add to GitHub under https://github.com/settings/ssh . If you've already added your own ssh key to GitHub, SparkleShare can use that instead, without any extra setup so just enter the remote path and you're ready:
If you want to set up your own host, there's a script you can use which configures everything for you - see the SparkleShare homepage for more info on this.
For other Linux distributions, Windows and Mac OSX, download SparkleShare from its homepage.