Unison (software)

From Wikipedia, the free encyclopedia
Unison
Unison Logo.png
Unison-cli-screenshot.png
Developer(s)Benjamin Pierce and contributors
Initial release1998; 24 years ago (1998)[1]
Stable release
2.51.4[2] / 24 June 2021; 7 months ago (24 June 2021)
Repository
Written inOCaml
Operating systemLinux, macOS, Windows
TypeSynchronization
LicenseGPLv3
Websitewww.cis.upenn.edu/~bcpierce/unison/

Unison is a file synchronization tool for Windows and various Unix-like systems (including macOS and Linux).[3] It allows two replicas of a collection of files and directories to be stored on different hosts (or different disks on the same host), modified separately, and then brought up to date by propagating the changes in each replica to the other.[4][5][6][7] Syncing replicas directly Unison is independent of third-party providers.

Features[]

Features of Unison include to handle file changes on both sides of replication; conflicts (same file changed on both sides) are displayed and can be resolved manually, optionally creating backups of changed files. Unison allows synchronization via computer networks (LAN, Internet) by direct connection (socket) or tunneled via ssh.[8] By using the rsync algorithm only changed blocks of files have to be transferred, thus saving bandwidth.

Usage[]

Unison can be called via the command line with parameters or controlled via profile files.[9][10] It can be executed interactively or batch-controlled automatically. In batch mode, unique changes are automatically synchronized. Files with replication conflicts are skipped.

After startup, Unison checks the file inventory per directory or computer and compares the timestamps of the files. If it detects changes, the changes to the corresponding files are analyzed in more detail. Afterwards Unison creates a replication list with suggestions for their synchronization and marks conflicts that cannot be resolved automatically.

GTK+ GUI

GUI versions of Unison exist for interactive use. Under Windows and Linux they are generally based on GTK+. The GUI versions allow an easier overview of the replicas and the proposed synchronization. Changes can be marked individually by keyboard or mouse and then implemented in bundles.

See also[]

References[]

  1. ^ "Unison Wiki | Main / UnisonFAQGeneral". alliance.seas.upenn.edu.
  2. ^ https://github.com/bcpierce00/unison/releases/tag/v2.51.4.
  3. ^ "unison packages dissection - Repology". repology.org.
  4. ^ Pierce, Benjamin C., and Jérôme Vouillon. "What's in Unison? A formal specification and reference implementation of a file synchronizer." Technical Reports (CIS) (2004): 40. https://repository.upenn.edu/cgi/viewcontent.cgi?article=1045&context=cis_reports
  5. ^ Uppoor, Sandesh, Michail D. Flouris, and Angelos Bilas. "Cloud-based synchronization of distributed file system hierarchies." 2010 IEEE International Conference on Cluster Computing Workshops and Posters (Cluster Workshops). IEEE, 2010. https://ieeexplore.ieee.org/abstract/document/5613087
  6. ^ Diehl, Mike (April 14, 2008). "File Synchronization with Unison | Linux Journal". Linux Journal.
  7. ^ "How to use Unison to sync files on Linux machines across a network". TechRepublic.
  8. ^ Hein, Werner. "In Sync » Linux Magazine". Linux Magazine.
  9. ^ Erik Inge Bolso (March 1, 2005). "File Synchronization with Unison | Linux Journal". Linux Journal.
  10. ^ Byfield, Bruce. "Command Line – unison » Linux Magazine". Linux Magazine.

External links[]

Retrieved from ""