Home      Discussion      Topics      Dictionary      Almanac
Signup       Login
File synchronization

File synchronization

Overview
File synchronization (or 'syncing') in computing is the process of making sure that files in two or more locations are updated through certain rules.

In one-way synchronization, also called mirroring
Mirror (computing)
In computing, a disk is an exact copy of a data set. On the Internet, a mirror site is an exact copy of another Internet site.Mirror sites are most commonly used to provide multiple sources of the same information, and are of particular value as a way of providing reliable access to large downloads...

, updates files are copied only from a 'source' location to a 'target' location, or locations, but no files are copied back to the source location. In two-way sync, updated files are copied in both directions, usually with the purpose of keeping the two locations identical to each other.
Discussion
Ask a question about 'File synchronization'
Start a new discussion about 'File synchronization'
Answer questions from other users
Full Discussion Forum
 
Recent Discussions
Encyclopedia
File synchronization (or 'syncing') in computing is the process of making sure that files in two or more locations are updated through certain rules.

In one-way synchronization, also called mirroring
Mirror (computing)
In computing, a disk is an exact copy of a data set. On the Internet, a mirror site is an exact copy of another Internet site.Mirror sites are most commonly used to provide multiple sources of the same information, and are of particular value as a way of providing reliable access to large downloads...

, updates files are copied only from a 'source' location to a 'target' location, or locations, but no files are copied back to the source location. In two-way sync, updated files are copied in both directions, usually with the purpose of keeping the two locations identical to each other. The term synchronization is used in this article to mean exclusively two-way file synchronization.

File synchronization is commonly used for home backups on external hard drives or updating for transport on USB flash drives. The automatic process prevents copying already identical files and thus can save considerable time from a manual copy, also being faster and less error prone. However this suffers from the limitation that the synchronized files have to physically fit in the portable drive. Synchronization software that only keeps a list of files and the changed files circumvents this problem (e.g. the "snapshot" feature in Beyond Compare
Beyond Compare
Beyond Compare is a file comparison utility. Aside from simple comparison of files, the program is capable of doing side-by-side comparison of directories, FTP directories, and archives. In an April 2009 review, Beyond Compare was awarded four out of five stars by CNET...

 or the "package" feature in Synchronize It!
Synchronize It
Synchronize It! allows you to compare and synchronize folders that can be stored on the same computer, on different computers, in archives or on FTP sites. Various synchronization modes and comparison rules are available.- Folders comparison :...

). It is particularly useful for mobile workers, or others that work on multiple computers. It is possible to synchronize multiple locations by synchronizing them a pair at a time.

Common features

  • Encryption
    Encryption
    In cryptography, encryption is the process of transforming information using an algorithm to make it unreadable to anyone except those possessing special knowledge, usually referred to as a key. The result of the process is encrypted information...

     for security
    Internet security
    When a computer connects to a network and begins communicating with others, it is taking a risk. Internet security involves the protection of a computer's internet account and files from intrusion of an unknown user...

    , particularly when synchronizing across the Internet
    Internet
    The Internet is a global system of interconnected computer networks that use the standardized Internet Protocol Suite to serve billions of users worldwide...

    .
  • Compressing
    Data compression
    In computer science and information theory, data compression or source coding is the process of encoding information using fewer bits than an unencoded representation would use, through use of specific encoding schemes.As with any communication, compressed data communication only works when both...

     any data sent across a network, this requires a server.
  • Conflict detection where a file has been modified on both sources, as opposed to where it has only been modified on one. No conflict detection can lead to overwriting copies of the file with the most recent version causing data loss. For conflict detection, the synchronization software needs to keep a database of the synchronized files. Distributed conflict detection can be achieved by version vectors
    Version vector
    A version vector is a mechanism for tracking changes to data in a distributed system, where multiple agents might update the data at different times. A version vector works by generating a preorder to keep track of update events that precede, and may therefore influence later updates. See...

    .
  • Specific support for using an intermediate storage device, such as a removable flash disc, to synchronize two machines. Although most synchronizing programs can be used in this way, providing specific support for this can reduce the amount of data stored on the device.
  • The ability to preview any changes before they are made.
  • The ability to view differences in individual files.

Open source


A comparison of free and open source
Free and open source software
Free and open-source software, also F/OSS, FOSS, or FLOSS is software that is liberally licensed to grant the right of users to study, change, and improve its design through the availability of its source code...

 file synchronization software.
Name Protocol Programing Language Platforms License Version
Conflict detection
Conduit
Conduit (software)
Conduit is an open-source synchronization program for GNOME. It allows the user to synchronize information to and from various destinations. For instance, it can be used to synchronise photos on the users computer with various websites...

 (generic framework)
Many Python
Python (programming language)
Python is a general-purpose high-level programming language. Its design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

 
Linux, Unix GPL 
DirSync Pro
DirSync Pro
DirSync Pro is an open source synchronization and backup utility for Windows, Linux and Macintosh. The first version was released in February 2003 and the application has been in active development since then....

 
file system Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

Windows, Linux, Mac OS X GPL  1.02 [22-Feb-2009] No
JFileSync
JFileSync
JFileSync is a file synchronization program. It is used for synchronizing files between two directories, either on one computer, or between a computer and another storage device JFileSync is a file synchronization program. It is used for synchronizing files between two directories, either on one...

 
file system Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

 
Windows, Linux, OS X, other Unix GPL  2.2 [20-Jul-2007] Yes
Replicator file system Basic
Basic
Basic may refer to:*BASIC, a computer programming language*Basic , a brand of cigarettes manufactured by the Altria Group *Basic , the dance move that defines the character of a particular dance...

 
Windows 3.5.6 [19-Nov-2008]
Unison
Unison (file synchronizer)
Unison is a file synchronization program. It is used for synchronizing files between two directories, either on one computer, or between a computer and another storage device Unison is a file synchronization program. It is used for synchronizing files between two directories, either on one...

 
similar to rsync; uses SSH (or file system) as transport OCaml  Windows, Linux, OS X, other Unix GPL  2.27.57 [20-Jan-2008] Yes (centralized database)
FreeFileSync file system C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as a middle-level language, as it comprises a combination of both high-level and low-level language features...

 
Windows, Linux GPL  v3.0 [16-Oct-2009] Yes
Toucan Backup file system C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as a middle-level language, as it comprises a combination of both high-level and low-level language features...

 
Windows 2000/XP/Vista/7, Wine
Wine (software)
Wine is a free software application that aims to allow Unix-like computer operating systems to execute programs written for Microsoft Windows. Wine also provides a software library known as Winelib against which developers can compile Windows applications to help port them to Unix-like systems.Wine...


GPL  2009-07-05 No

Commercial


A comparison of proprietary software
Proprietary software
Proprietary software is any computer software with restrictions on use or private modification, or with restrictions judged to be excessive on copying or publishing of modified or unmodified versions. The term proprietary software is thus the opposite of free software, generally speaking...

 released as commercial
Commercial software
Commercial software is computer software that is produced for sale or that serves commercial purposes. Commercial software is most often proprietary software, but most well-known free software packages are commercial software, too...

.

Name Windows
Mac Linux Other OS !! Open source !! Online backup service !! Freeware version !! Paid version !! Conflict detection
Allway Sync
Allway Sync
Allway Sync is backup and file synchronization software that allows backing up and synchronizing files to the same or different drives, to different media , or to a remote server...

 
Dmailer Sync 
Dropbox
Dropbox (storage provider)
Dropbox is a storage application and service operated by Evenflow, Inc. The service enables users to store and sync files online and between computers. Dropbox has a cross-platform client that enables users to drop any file into a Dropbox folder that is then synced to the web and the users' other...

 
iPhone
Get Backup
Get Backup
Get Backup is a Mac OS X backup and synchronization software utility originally released by DobrySoft in 2005 under the name Dobry Backuper and later acquired by BeLight Software in 2008 to be developed further.-History:...

 
GoodSync
GoodSync
GoodSync is backup and file synchronization software that allows backing up and synchronizing files to the same or different drives, to different media , or to a remote server..-Features:...

 
Handy Backup
Handy Backup
Handy Backup is a disk imaging and backup software developed by Novosoft LLC. Handy Backup creates backup copies of data stored on computers working under Microsoft Windows OS or Unix-like systems with the WINE Windows-compatibility layer. The backups can be stored to a variety of local and remote...

 
PowerFolder
PowerFolder
PowerFolder is a program that synchronizes files and folders over the internet or a LAN.For this program to work, it must be installed on all computers that will share the files. PowerFolder is available as freeware which allows to store 5 GB of data on up to 5 computers...

 
Robocopy
Robocopy
robocopy, or "Robust File Copy", is a command-line directory replication command. It was available as part of the Windows Resource Kit, and introduced as a standard feature of Windows Vista and Windows Server 2008....

 
[Windows 2003]
SpiderOak
Spideroak
SpiderOak is an online backup tool for Windows, Mac and Linux users to back up, share, sync, access and store their data using an off-site server. SpiderOak uses encrypted cloud storage and client-side encryption key creation, so even employees of SpiderOak cannot access users' information...

 
Partial
SugarSync
Sharpcast
Sharpcast is a San Mateo, CA-based startup specializing in data synchronization software. Their main product, SugarSync, is an application which syncs files, photos and media among multiple computers and backs them up on the Web....

 
iPhone, BlackBerry
Windows Mobile
SuperFlexible
SuperFlexible
SuperFlexible file synchronizer is backup and file synchronization software that allows backing up and synchronizing files to the same or different drives, to different media , or to a remote server. .-Features:...

 
SyncBack
SyncBack
SyncBack is a backup and file synchronization software that allows backing up and synchronizing files to the same or different drives, to different media , or to a remote server....

 
Synchronize It!
Synchronize It
Synchronize It! allows you to compare and synchronize folders that can be stored on the same computer, on different computers, in archives or on FTP sites. Various synchronization modes and comparison rules are available.- Folders comparison :...

 
SyncMate
SyncMate
SyncMate is a freeware and shareware synchronization tool, published by Eltima Software. It allows synchronizing information between Mac and Windows Mobile devices, Nokia S40 phones, other Macs or PCs, PSP, USB flash drives and Google account . SyncMate enables all users to back up data to online...

 
Syncplicity
Syncplicity
Syncplicity is a backup and synchronization service provided by Syncplicity Inc. The service allows users to store and sync files online between computers. Syncplicity team moved their Windows client out of public beta on November 3 2008 . There is a Mac Client too which is still a beta software....

 
Ubuntu One
Ubuntu One
Ubuntu One is a storage application and service operated by Canonical Ltd and currently in public beta.The service enables users to store and sync files online and between computers. Ubuntu One has a client application that only runs on Ubuntu 9.04 and further. A free Ubuntu One account offers 2 GB...

 
Partial

Freeware


This is a list of proprietary software
Proprietary software
Proprietary software is any computer software with restrictions on use or private modification, or with restrictions judged to be excessive on copying or publishing of modified or unmodified versions. The term proprietary software is thus the opposite of free software, generally speaking...

 released as freeware
Freeware
Freeware is computer software that is available for use at no cost or for an optional fee.The opposite of Freeware is Payware.-History:...

 or gratis
Gratis
Gratis is the process of providing goods or services without compensation. It is often referred to in English as "free of charge" or "complementary"...

.

  • Microsoft ActiveSync
    ActiveSync
    ActiveSync is a data synchronization program developed by Microsoft for use with its Microsoft Windows line of operating systems. Originally released under the name "Handheld PC Explorer" in 1996, it provides users of Microsoft Windows a way to transport documents, calendars, contact lists and...

     and its successor Windows Mobile Device Center
    Windows Mobile Device Center
    Windows Mobile Device Center is a synchronization software program developed by Microsoft, and the successor to ActiveSync. It is designed to synchronize various content including music, video, contacts, calendar events, web browser favorites, and other files between Windows Mobile devices and the...

     syncs mobile devices (Windows)
  • Gbridge
    Gbridge
    Gbridge is an extension to Google's Gtalk network service. It automatically forms a VPN between user's multiple computers if logged in under same Gtalk user account. The VPN can also be extended to Gtalk friends based on invitation...

     Sync folders, Remote desktop, Live web browsing, etc. (Windows)
  • Microsoft Sync Framework
    Microsoft Sync Framework
    Microsoft Sync Framework is a data synchronization platform from Microsoft that can be used to synchronize data across multiple data stores. Sync Framework includes a transport-agnostic architecture, into which data store-specific synchronization providers, modelled on the ADO.NET data provider...

     syncs files, data and services. A framework, t a tool. (Windows)
  • Microsoft SyncToy
    SyncToy
    SyncToy is a free PowerToy designed by Microsoft that provides an easy to use graphical user interface that can automate synchronizing files and folders. It is written using Microsoft's .NET framework...

     (Windows)
  • Windows Live Sync (Previously Microsoft FolderShare) (Windows, OSX)

See also

  • Data synchronization
    Data synchronization
    Data synchronization is the process of establishing consistency among data from a source to a target data storage and vice versa and the continuous harmonization of the data over time. It is fundamental to a wide variety of applications, including file synchronization and mobile device...

  • File comparison
    File comparison
    File comparison in computing is the automatic comparing of data between files on a file system. The result of comparisons are typically displayed to the user, but can also be used to accomplish tasks in networks, file systems and revision control....

  • Mirroring
    Mirror (computing)
    In computing, a disk is an exact copy of a data set. On the Internet, a mirror site is an exact copy of another Internet site.Mirror sites are most commonly used to provide multiple sources of the same information, and are of particular value as a way of providing reliable access to large downloads...

  • Backup software
    Backup software
    Backup software is a computer program used to perform a complete backup of a file, data, database, system or server. The backup software enables a user to make an exact duplicate of everything contained on the original source...

  • List of backup software
  • Remote backup service
    Remote backup service
    A remote, online, or managed backup service is a service that provides users with an online system for backing up and storing computer files. Managed backup providers are companies that provide this type of service....

  • Shared file access