Synchronization and backup programs

From ArchWiki
Revision as of 15:52, 17 February 2016 by Kynikos (talk | contribs) (Incremental backups: correction)
Jump to navigation Jump to search

Having backups of important data is a necessary measure to take, since human and machine processing errors are very likely to generate corruption as time passes, and also the physical media where the data is stored is inevitably destined to fail. This page introduces many applications available for the task, subdivided in categories to best suit most use cases.


Before you start trying various programs out, try to think about your needs, e.g. consider the following questions:

  • What backup medium do I have available? (CD, DVD, remote server, external hard drive, etc.)
  • How often do I plan to backup? (daily, weekly, monthly, etc.)
  • What features do I expect from the backup solution? (compression, encryption, handles renames, etc.)
  • How do I plan to restore backups if needed?

Data synchronization

These applications simply keep directories synchronized between multiple locations/machines, in a "mirror" fashion. Nonetheless, most of them still allow storing and reverting to old revisions of modified or deleted files.

See also Wikipedia:Comparison of file synchronization software.

  • BitTorrent Sync — File sharing system that relies on the BitTorrent protocol. || btsyncAUR
  • Free File Sync — Free File Sync helps you synchronize files and synchronize folders for Windows, Linux and Mac OS X. It is designed to save your time setting up and running backup jobs while having nice visual feedback along the way. || freefilesyncAUR
  • git-annex — Creates a synchronised folder on each of your OSX and Linux computers, Android devices, removable drives, NAS appliances, and cloud services. || git-annex
  • Grsync — GTK+ interface to rsync || grsync
  • — Osync is a robust bidirectional file synchronization tool written in bash and based on rsync. It works on local and / or remote directories via ssh tunnels. It's mainly targeted to be launched as cron task, with features turned towards automation among:
    • Execution time control
    • Fault tolerance with possibility to resume on error
    • Soft deletion, on-conflict backups with automatic cleanup
    • Alert notifications via email
    • Before and /or after time controlled local and / or remote command execution
    • File monitor mode || not packaged? search in AUR
  • rsync — A file transfer program to keep remote files in sync.
    • rsync almost always makes a mirror of the source.
    • It is possible to restore a full backup before the most recent backup if hardlinks are allowed in the backup file system. See Back up your data with rsync for more information.
    • If hard links are not allowed, it is impossible to restore a full backup before the most recent backup (but you can use --backup to keep old versions of the files).
    • Standard install on all distros.
    • Can run over SSH (port 22) or native rsync protocol (port 873).
    • Win32 version available. || rsync
  • SparkleShare — Collaboration and sharing tool based on git written in C Sharp. || sparkleshare
  • Syncthing — Open-source file synchronization client/server application, written in Go, implementing its own, equally free Block Exchange Protocol. || syncthing syncthing-gtk
  • Synkron — A folder synchronization tool.
    • Syncs multiple folders.
    • Can exclude files from sync based on wildcards.
    • Restores files.
    • Cross-platform support. || synkronAUR
  • Unison — A program that synchronizes files between two machines over network (LAN or Inet) using a smart diff method + rsync. Allows the user to interactively choose which changes to push, pull, or merge. || unison

Incremental backups

Applications that can do incremental backups remember and take into account what data has been backed up during the last run (so-called "diffs") and eliminate the need to have duplicates of unchanged data. Restoring the data to a certain point in time would require locating the last full backup and all the incremental backups from then to the moment when it is supposed to be restored. This sort of backup is useful for those who do it very often.

Some do not apply compression or encryption: on one hand, a working copy of everything is immediately available, no decompression/decryption needed; a downside to rsync-type programs is that they cannot be easily burned and restored from a CD or DVD.

Others tend to create (big) archive files and (of course) keep track of what has been archived: creating .tar.bz2 or .tar.gz archives has the advantage that you can extract the backups with just tar/bzip2/gzip, so you do not need to have the backup program around.

See also Dotfiles#Version control.


  • Name: the application name, linking to the official website.
  • Installation: a link to the main ArchWiki article, if existing, or directly to the package pages.
  • Implementation: the programming language, library, or utility that the application is based on.
  • Compressed storage: compression is used for storage.
  • Encrypted storage: encryption is used for storage.
  • Delta transfer: only the modified parts of files are transferred.
  • Encrypted transfer: data is encrypted by default when transferred over a network.
  • FS metadata: file system permissions and attributes are backed up.
  • Easy access: the backup is stored plainly in the file system, or is mountable as such.
  • Resumable: the backup can be resumed without restarting it if interrupted.
  • Handles renames: moved/renamed files are detected and not stored or transferred twice; it typically means that a checksum is computed for files or chunks thereof.
  • CLI: the application is command-line driven, i.e. it is scriptable.
  • Other interfaces: the application has the specified user interfaces, e.g. GUI, TUI, or web-based.
  • Increment type: the strategy used to reduce used space by deduplicating data (i.e., besides compression).
    • file-based: if a file is modified, the entire new version is stored at each snapshot.
      • hard-links: unmodified files are stored as hard links to previous versions.
    • chunk-based: only the modified parts of files are stored at each snapshot.
  • Licence: the licence of the server and client applications.
  • Other platforms: supported operating systems other than Linux.
  • Active: whether the project is currently maintained.
  • Specificity: brief notes about special features that notably set the application apart from the others.

Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: Enter values in the cells marked with "?". Also replace the "Yes" with more specific values. (Discuss in Talk:Synchronization and backup programs#)

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Reason: The values in the table need double-checking. Ask upstream for confirmation? (Discuss in Talk:Synchronization and backup programs#)
Name Installation Implementation Compressed storage Encrypted storage Delta transfer Encrypted transfer FS metadata Easy access Resumable Handles renames CLI Other interfaces Increment type Licence Other platforms Active Specificity
Areca Backup arecaAUR Java Zip, Zip64 AES128, AES256 Yes Yes Yes No Pausing only No Yes Yes chunk-based GPLv2 Windows Yes
Attic atticAUR Python Yes AES256 Yes SSH Yes Yes Yes Yes Yes No chunk-based BSD Yes
Back In Time Back In Time Python, rsync, diff No No rsync rsync rsync Yes No No No Qt file-based, hard links GPL Yes
BackupPC BackupPC Perl Yes No Yes Yes Yes No Yes ? No Web file-based, hard links GPLv2 Any (no client needed) Yes Enterprise-grade, server-based system; identical files across backups of the same or different clients are stored only once.
Bacula bacula-* in AUR C++ Yes Yes ? Yes ? ? Yes ? Yes GUI, Web ? AGPLv3 Windows, OS X Yes
BorgBackup borg Python (Attic fork) lz4, zlib, lzma AES256 Yes SSH Yes[1] Yes Yes[2] Yes Yes No chunk-based BSD *BSD, OS X Yes
btar btarAUR[broken link: archived in aur-mirror] C Yes Yes Yes Yes ? ? ? ? Yes No ? GPLv3 Yes Redundancy, indexed extraction, multicore compression, input and output serialisation, tolerance to partial archive errors.
bup bup bup-gitAUR C, Python, git No No Yes Yes ? ? ? ? Yes third party ? GPLv2 Windows, OS X, NetBSD, Solaris Yes
burp burp-backupAUR librsync Yes Yes Yes Yes ? ? ? ? Yes burp-ui ? AGPLv3 Windows Yes
DAR (Disk ARchive) darAUR C++ special archive format Yes ? Yes ? ? ? ? Yes DarGUI ? GPL Windows, Solaris, FreeBSD, NetBSD, MacOS X Yes Automatic backup using cron is possible with sarabAUR[broken link: archived in aur-mirror].
DarGUI darguiAUR DAR front-end Yes Yes ? Yes ? ? ? ? No GTK ? GPL Windows ?
Déjà Dup Déjà Dup duplicity front-end Yes Yes ? Yes ? ? ? ? No GTK+ ? GPLv3 Yes Integrated into GNOME Files.
Duplicati duplicati-latestAUR C# Yes Yes ? Yes ? ? ? ? Yes Yes ? LGPL Windows Yes
Duplicity Duplicity librsync gzip gpg ? Yes ? ? ? ? Yes Duply ? GPL Yes
Duply Duply duplicity front-end Yes Yes ? Yes ? ? ? ? Yes No ? GPLv2 Yes
gutbackup gutbackupAUR rsync wrapper No No ? Yes ? ? ? ? Yes No ? MIT Yes
hdup hdup C tar.gz, tar.bz2 gpg ? SSH ? ? ? ? Yes No ? GPLv2 No Multiple backup targets.
keepconf not packaged? search in AUR rsync, git No No ? Yes ? ? ? ? Yes No ? GPLv3 Yes
Kup Backup System kup rsync, bup front-end No No ? Yes ? ? ? ? No Qt ? GPLv2 Yes
Link-Backup link-backupAUR Python No No ? SSH ? ? Yes Yes Yes No ? MIT No It copies itself to the server.
luckyBackup luckybackupAUR C++ No No ? Yes ? ? ? ? limited Qt ? GPLv3 FreeBSD, Windows, OS X No
obnam obnamAUR Python Yes GnuPG Yes Yes ? Yes ? ? Yes No ? GPLv3 Yes
rdiff-backup rdiff-backup librsync No No Yes Yes ? ? ? ? Yes No ? GPL Win32 No
rdup rdupAUR C tar.gz gpg, blowfish and others ? ? ? ? ? ? Yes No ? GPLv3 No Set of simple command-line tools.
rsnapshot rsnapshot rsync No No Yes Yes ? ? ? ? Yes No file-based, hard links GPLv2 Win32 Yes
SafeKeep safekeepAUR rdiff-backup No No ? Yes ? ? ? ? Yes No ? GPL No Integrates with LVM and databases to create consistent backups. Bandwidth throttling.
sbackup sbackupAUR Python Yes ? ? ? ? ? ? ? No GTK ? GPLv3 Yes
Snebu snebuAUR[broken link: archived in aur-mirror] C Yes No ? Yes ? ? ? ? Yes No ? GPLv3 ? Supports arbitrary retention schedules.
Synbak synbak Multitool wrapper Yes No Yes Yes Yes ? ? ? No Web ? GPLv3 Yes Unifies several backup methods.
syncBackup syncbackupAUR[broken link: archived in aur-mirror] C++, rsync front-end No No ? Yes ? ? ? ? No Qt ? GPL No
TimeShift timeshiftAUR rsync No No ? Yes ? ? ? ? No GTK ? GPLv3 Yes
trinkup trinkupAUR[broken link: archived in aur-mirror] rsync wrapper No No ? Yes ? ? ? ? Yes No ? DWTFYWWI Yes
ZBackup zbackupAUR C++ LZMA, LZO AES ? ? ? ? ? ? Yes No ? GPLv2 Yes Repository consists of immutable files.
Name Installation Implementation Compressed storage Encrypted storage Delta transfer Encrypted transfer FS metadata Easy access Resumable Handles renames CLI Other interfaces Increment type Licence Other platforms Active Specificity

Cloud storage

Third-party services

See also Wikipedia:Comparison of online backup services.

  • Amazon S3 — Amazon Simple Storage Service (Amazon S3), provides developers and IT teams with secure, durable, highly-scalable object storage. Amazon S3 is easy to use, with a simple web service interface to store and retrieve any amount of data from anywhere on the web. With Amazon S3, you pay only for the storage you actually use. There is no minimum fee and no setup cost. || s3cmd
  • CloudBacko — Enterprise-grade cloud backup tool for Linux, Mac and Windows.
    • Closed source. Free, Lite and Pro versions available.
    • Written in Java.
    • Encrypted backup to multiple cloud destinations.
    • Supports multiple cloud destinations combined as one storage pool.
    • No installation required in Free version.
    • GUI frontend for Linux in Pro version.
    • Virtual machine backup available in Pro version. || not packaged? search in AUR
  • CrashPlan — An online/offsite backup solution.
    • Unlimited online space for very reasonable pricing.
    • Automatic and incremental backups to multiple destinations.
    • Intuitive GUI.
    • Offers encryption and de-duplication.
    • Software is free for local use.
    • Restore prevents simultaneous backing up || crashplanAUR
  • Dropbox — A popular file-sharing service.
    • A daemon monitors a specified directory, and uploads incremental changes to
    • Changes automatically show up on your other computers.
    • Includes file sharing and a public directory.
    • You can recover deleted files.
    • Community written add-ons.
    • Free accounts have 2GB storage. || dropboxAUR nautilus-dropboxAUR
  • Google Drive — A file storage and synchronization service provided by Google.
    • Provides cloud storage, file sharing and collaborative editing.
    • Multiple clients are available. || google-drive-ocamlfuseAUR (free), driveAUR (free), griveAUR (free), insync (non-free)
  • iDrive — Universal Online Backup.
    • Multiple Device Backup.
    • Online File Sync.
    • Real-Time Backup.
    • Backup and Access from Mobile Devices.
    • Remote Manage.
    • No GUI Front end for Linux, command line based. A wrapper script is available to make it easier to use. || idevsutilAUR[broken link: archived in aur-mirror], idrive-wrapperAUR[broken link: archived in aur-mirror]
  • Jungle Disk — An online backup tool that stores its data in Amazon S3 or Rackspace Cloud Files.
    • A GNOME Files extension.
    • Only paid plans available. || nautilus-junglediskAUR[broken link: archived in aur-mirror]
  • MEGA — Successor to the MegaUpload file-sharing service.
    • Free accounts are 50GB with paid plans available for more space.
    • Offers encryption and de-duplication.
    • Usually accessed through its web interface but other tools exist. || megatoolsAUR, megasyncAUR, megafuseAUR[broken link: archived in aur-mirror]
  • Nutstore — A cloud service that lets you sync and share files anywhere.
    • Multiple file folders sync.
    • Service for Chinese users. || nutstoreAUR
  • SpiderOak — An online backup tool for Windows, Mac and Linux users to back up, share, sync, access and store their data.
    • Free account holds 2GB as a 60-day trial.
    • Includes file sharing and a public directory.
    • Incremental backup and sync are both supported. || spideroak-oneAUR
  • Storage Made Easy — Provides unified access to numerous cloud storage services, as well as its own storage.
    • Free and paid version available.
    • Free account holds 5GB and allows access to up to three other cloud storage providers.
    • Supports local directory via fuse, as well as web access.
    • Supports many cloud storage services, such as Box, Dropbox, Google Drive, Onedrive, and others. || smestorageAUR[broken link: archived in aur-mirror]
  • Tarsnap — A secure online backup service for BSD, Linux, OS X, Solaris and Windows (through Cygwin).
    • Compressed encrypted backups to Amazon S3 Servers.
    • Automate via cron.
    • Incremental backups.
    • Backup any files or directories.
    • Command line only client.
    • Pay only for usage (bandwidth and storage). || tarsnap
  • Yandex Disk — Free cloud storage service created by that gives you access to your photos, videos and documents from any internet-enabled device. || yandex-diskAUR

Multi-service clients

  • Déjà Dup — A simple GTK+ backup program. It hides the complexity of doing backups the 'right way' (encrypted, off-site, and regular) and uses duplicity as the backend.
    • Automatic, timed backup configurable in GUI.
    • Restore wizard.
    • Integrated into the GNOME Files file manager.
    • Inherits several features of duplicity. || deja-dup
  • Duplicati — Backup client that securely stores encrypted, incremental, compressed backups on cloud storage services and remote file servers. It works with Amazon S3, Windows Live SkyDrive, Google Drive (Google Docs), Rackspace Cloud Files or WebDAV, SSH, FTP (and many more). Duplicati is open source and free. || duplicati-latestAUR
  • Duplicity — A simple command-line utility which allows encrypted compressed incremental backup to nearly any storage.
    • Supports gpg encryption and signing.
    • Supports gzip compression.
    • Supports full or incremental backups, incremental backup stores only difference between new and old file.
    • Supports pushing over many protocols. || duplicity
  • Duply — Front-end for duplicity which simplifies running it by:
    • keeping recurring settings in profiles per backup job;
    • automated import/export of keys between profile and keyring;
    • enabling batch operations eg. backup_verify_purge;
    • executing pre/post scripts;
    • precondition checking for flawless duplicity operation. || duplyAUR
  • rclone — Rclone is a command line program to sync files and directories to and from Google Drive, Amazon S3, Openstack Swift / Rackspace cloud files / Memset Memstore, Dropbox, Google Cloud Storage and The local filesystem. || rclone


A cooperative storage cloud is a decentralized model of networked online storage where data is stored on multiple computers, hosted by the participants cooperating in the cloud.

  • Symform — A peer-to-peer cloud backup service.
    • Unlimited free backup in exchange for 2:1 storage space contribution with an always-connected device (at least 80% uptime).
    • Payment options exist.
    • First 10GB of backup storage is free (no contribution needed).
    • In addition to paid support, support plans in exchange for extended contribution (300GB+) exist.
    • Automatic and incremental backups.
    • Data is encrypted before leaving the computer, though keys are also stored on the Symform's servers.[3]
    • Customizable limits for bandwidth consumption.
    • Ability to have a local copy ("Hot Copy") of the backed up data on a different disk or computer.
    • Ability to have synchronized folders between nodes (Dropbox-like).
    • Closed source, using mono. Windows clients available. || symformAUR[broken link: archived in aur-mirror]

Custom infrastructure

  • Cozy — A personal cloud you can hack, host and delete. || cozy-standaloneAUR cozy-nginxAUR cozy-apacheAUR
  • OpenStack — Controls large pools of compute, storage, and networking resources throughout a datacenter, managed through a dashboard or via the OpenStack API. OpenStack works with popular enterprise and open source technologies making it ideal for heterogeneous infrastructure. || not packaged? search in AUR
  • ownCloud — Software suite that provides a location-independent storage area for data. || owncloud
  • Pydio — Mature open source web application for file sharing and synchronization. || pydioAUR
  • Seafile — Open source cloud storage system, with advanced support for file syncing, privacy protection and teamwork. || seafile-serverAUR seafile-clientAUR seafile-client-cliAUR seafile-client-qt5AUR
  • StackSync — Open-source scalable Personal Cloud that can adapt to the necessities of organizations. It puts a special emphasis on security by encrypting data on the client side before it is sent to the server. || not packaged? search in AUR
  • Syncany — Cloud storage and filesharing application with a focus on security and abstraction of storage. || syncanyAUR

Distributed file systems

Merge-arrows-2.pngThis article or section is a candidate for merging with File systems.Merge-arrows-2.png

Notes: Somebody knowledgeable on clustered/distributed file systems should consider the merge. (Discuss in Talk:Synchronization and backup programs#Distributed file systems)

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Reason: Is the section heading correct? Is this a too heteregenous group of software pieces? (Discuss in Talk:Synchronization and backup programs#Distributed file systems)
  • Ceph — Distributed object store and file system designed to provide excellent performance, reliability and scalability. || ceph
  • GlusterFS — Cluster file system capable of scaling to several peta-bytes. || glusterfs
  • Sheepdog — Distributed object storage system for volume and container services and manages the disks and nodes intelligently. || not packaged? search in AUR
  • Tahoe-LAFS — Tahoe Least-Authority Filesystem is a free and open, secure, decentralized, fault-tolerant, peer-to-peer distributed data store and distributed file system. || tahoe-lafsAUR

Data cloning

Merge-arrows-2.pngThis article or section is a candidate for merging with Disk cloning#Disk cloning software.Merge-arrows-2.png

Notes: please use the second argument of the template to provide more detailed indications. (Discuss in Talk:Synchronization and backup programs#)

Another type of backups are those used in case of a disaster. These include application that allow easy backup of entire filesystems and recovery in case of failure, usually in the form of a Live CD or USB drive. The contains complete system images from one or more specific points in time and are frequently used by to record known good configurations.

See also Disk cloning.

  • Arch Backup — A trivial backup script with simple configuration.
    • Configurable compression method.
    • Multiple backup targets. || arch-backupAUR
  • Areca Backup — An easy to use and reliable backup solution for Linux and Windows.
    • Written in Java.
    • Primarily archive-based (zip), but will do file-based backup as well.
    • Delta backup supported (stores only changes). || arecaAUR
  • Clonezilla — A disaster recovery, disk cloning, disk imaging and deployment solution.
    • Boots from live CD, USB flash drive, or PXE server.
    • Supports ext2, ext3, ext4, reiserfs, reiser4, xfs, jfs, btrfs FAT32, NTFS, HFS+ and others.
    • Uses Partclone (default), Partimage (optional), ntfsclone (optional), or dd to image or clone a partition.
    • Multicasting server to restore to many machines at once. || clonezilla
  • DAR — A full-featured command-line backup tool, short for Disk ARchive.
    • It uses its own format for archives (so you need to have it around when you want to restore).
    • Supports splitting backups into more files by size.
    • Makefile-type config files, some custom scripts are available along with it.
    • Supports basic encryption.
    • Automatic backup using cron is possible with sarabAUR[broken link: archived in aur-mirror]. || darAUR kdarAUR[broken link: archived in aur-mirror] (fontend)
  • FSArchiver — A safe and flexible file-system backup and deployment tool
    • Support for basic file attributes (permissions, owner, ...).
    • Support for multiple file-systems per archive.
    • Support for extended attributes (they are used by SELinux).
    • Support the basic file-system attributes (label, uuid, block-size) for all linux file-systems.
    • Support for ntfs filesystems (ability to create flexible clones of a Windows partitions).
    • Checksumming of everything which is written in the archive (headers, data blocks, whole files).
    • Ability to restore an archive which is corrupt (it will just skip the current file).
    • Multi-threaded lzo, gzip, bzip2, lzma compression.
    • Support for splitting large archives into several files with a fixed maximum size.
    • Encryption of the archive using a password. Based on blowfish from libcrypto from OpenSSL.
    • Support backup of a mounted root filesystem (-A option). || fsarchiver
  • Mondo Rescue — A disaster recovery solution to create backup media that can be used to redeploy the damaged system.
    • Image-based backups, supporting Linux/Windows.
    • Compression rate is adjustable.
    • Can backup live systems (without having to halt it).
    • Can split image over many files.
    • Supports booting to a Live CD to perform a full restore.
    • Can backup/restore over NFS, from CDs, tape drives and and other media.
    • Can verify backups. || mondoAUR
  • Partclone — A tool that can be used to back up and restore a partition while considering only used blocks.
    • Supports ext2, ext3, hfs+, reiser3.5, reiser3.6, reiser4, ext4 and btrfs.
    • Supports compression. || partclone
  • Partimage — A disk cloning utility for Linux/UNIX environments.
    • Has a Live CD.
    • Supports the most popular filesystems on Linux, Windows and Mac OS.
    • Compression.
    • Saving to multiple CDs or DVDs or across a network using Samba/NFS. || partimage
  • Q7Z — P7Zip GUI for Linux, which attempts to simplify data compression and backup. It can create the following archive types: 7z, BZip2, Zip, GZip, Tar.
    • Updates existing archives quickly.
    • Backup multiple folders to a storage location.
    • Create or extract protected archives.
    • Lessen effort by using archiving profiles and lists. || q7zAUR
  • Redo Backup and Recovery — A backup and disaster recovery application that runs from a bootable Linux CD image.
    • Is capable of bare-metal backup and recovery of disk partitions.
    • Uses xPUD and Partclone for the backend. || not packaged? search in AUR
  • System Tar & Restore — Backup and Restore your system using tar or Transfer it with rsync
    • CLI and Dialog interfaces
    • Easy backup and restore wizards
    • Creates .tar.gz, .tar.bz2, .tar.xz or .tar archives
    • Supports openssl / gpg encryption
    • Uses rsync to transfer a running system
    • Supports Grub2, Syslinux, EFISTUB/efibootmgr and Systemd/bootctl || system-tar-and-restoreAUR

Version control systems

These are traditionally used for keeping track of software development; but if you want to have a simple way to manage your config files in one directory, it might be a good solution.

See also Wikipedia:Comparison of revision control software.

  • Bazaar — A distributed version control system that helps you track project history over time and to collaborate easily with others.
    • Similar commands to Subversion.
    • Supports working with or without a central server.
    • Support for working with some other revision control systems
    • Complete Unicode support. || bzr
  • Darcs — A distributed revision control system that was designed to replace traditional, centralized source control systems such as CVS and Subversion.
    • Offline mode.
    • Easy branching and merging.
    • Written in Haskell.
    • Not very fast. || darcs
  • Git — A distributed revision control and source code management system with an emphasis on speed.
    • Very easy creation, merging, and deletion of branches.
    • Nearly all operations are performed locally, giving it a huge speed advantage on centralized systems.
    • Has a "staging area" or "index", this is an intermediate area where commits can be formatted and reviewed before completing the commit.
    • Does not handle binary files very well. || git
  • Mercurial — A distributed version control system written in Python and similar in many ways to Git.
    • Platform independent.
    • Support for extensions.
    • A set of commands consistent with Subversion.
    • Supports tags. || mercurial
  • Subversion — A full-featured centralized version control system originally designed to be a better CVS.
    • Renamed/copied/moved/removed files retain full revision history.
    • Native support for binary files, with space-efficient binary-diff storage.
    • Costs proportional to change size, not to data size.
    • Allows arbitrary metadata ("properties") to be attached to any file or directory. || subversion

See also