Unison

Unison

Bidirectional file synchronizer for local and remote directories

5kstars
262forks
Last commit: 1mo ago
Repo age: 10y old
Unison screenshot

Unison is a file-synchronization tool for POSIX systems (Linux, BSD, macOS) and Windows. It keeps two replicas of a set of files and directories synchronized, allowing changes to be made independently on each side and then propagated in both directions.

Key Features

  • Bidirectional synchronization (not one-way mirroring) with automatic propagation of non-conflicting changes
  • Conflict detection and presentation when both replicas are modified
  • Works locally (different disks) or across networks between hosts
  • Communication over SSH or direct TCP connections
  • Efficient transfers over slow links, optimizing small updates to large files with an rsync-like delta/compression approach
  • Offline-friendly behavior since data is copied rather than accessed via a network filesystem
  • Resilient to failures, aiming to keep replicas and internal state consistent after interruptions
  • Repeat mode with filesystem monitoring to sync changes soon after they happen

Use Cases

  • Keeping a laptop and a server directory synchronized across SSH
  • Syncing personal work folders between multiple computers without relying on a centralized cloud drive
  • Maintaining consistent configuration or project directories across machines while handling occasional conflicts

Limitations and Considerations

  • Designed for synchronizing exactly two replicas at a time; it is not a multi-node distributed filesystem
  • Conflicts require user resolution when both sides change the same file or structure

Unison is a mature, long-used synchronizer focused on correctness, cross-platform support, and reliable two-way syncing. It fits best where you want direct control over replication behavior and a robust tool that works well over real-world networks.

Categories:

Tags:

Tech Stack:

Share:

Similar Services

Syncthing

Syncthing

Open-source, peer-to-peer file synchronization tool.

79.1k
4.9k
Last commit: 2d ago

Open-source peer-to-peer file synchronization with TLS encryption, no central server, and a browser-based UI.

Alternative to:
Resilio Sync
Resilio Sync
+6
LocalSend

LocalSend

Open-source cross-platform local network file sharing app

73.3k
3.9k
Last commit: 4d ago

LocalSend is a free, open-source app for fast, encrypted file and text sharing between nearby devices over a local network, available on desktop and mobile.

Alternative to:
Apple AirDrop
Apple AirDrop
+6
AList

AList

Multi-storage file listing server with WebDAV and previews

48.8k
8k
Last commit: 26d ago

AList is a multi-storage file listing and sharing server with WebDAV access, file previews, protected routes, uploads, and cross-storage file operations.

Alternative to:
Dropbox
Dropbox
+19
copyparty

copyparty

Portable file server with fast resumable uploads and many protocols

41k
1.7k
Last commit: 19h ago

Copyparty is a portable file server with a web UI, accelerated resumable uploads, deduplication, indexing, and support for WebDAV, SFTP, FTP and more.

Alternative to:
WeTransfer
WeTransfer
+19
qBittorrent

qBittorrent

Cross-platform BitTorrent client built with Qt and libtorrent

35k
4.5k
Last commit: 21h ago

qBittorrent is a fast, free, cross-platform BitTorrent client with a desktop UI and optional Web UI, built on libtorrent for efficient torrent downloading and seeding.

Alternative to:
BitTorrent
BitTorrent
+2
Nextcloud

Nextcloud

Open-source collaboration platform for file sync and groupware

33.8k
4.7k
Last commit: 16h ago

Nextcloud is an open-source content collaboration platform providing file sync & share, groupware (calendar, contacts, mail), real-time office editing, chat and video con...

Alternative to:
Google Drive
Google Drive
+19