Yet Another Rsync is a file synchronization and backup tool with the interface similar to git.
It can be used to synchronize data between different hosts or locally (for example, to a backup drive). It provides a familiar git command interface while working with files.
YARsync can be used to manage hierarchies of unchanging files, such as music, books, articles, photographs, etc. Its final goal is to have the same state of files across different computers. It also allows to store backup copies of data and easily copy, update or recover that.
It is a Python wrapper (available for Python>=3.6) around rsync and requires a file system with hard links.
This is free and open source software.
Key Features
- Distributed – no central host or repository. If different replicas diverge, the program assists the user to merge the repositories manually. Several replicas of the repository can diverge, and in that case a manual merge is supported.
- Efficient – only run on user demand, and does not consume system resources constantly. Already transferred files are not transmitted again. This allows the user to rename or move files or whole directories without any costs, driving constant improvements on the repository.
- Non-intrusive – does nothing to user data. It has no complicated packing or unpacking. All user data and program configuration are stored as usual files in the file system. If one decides to stop using the software, they can simply remove the configuration directory at any time.
- Simple – does not implement complicated file transfer algorithms, but uses an existing, widely accepted and tested tool for that. User configuration is stored in simple text files, and repository snapshots are usual directories, which can be modified, copied or browsed from a file manager
- Safe – preserves user data. It always allows one to see what will be done before any actual modifications (–dry-run). It is its advantage compared to continuous synchronization tools, that may be dangerous if local repository gets corrupt (e.g. encrypted by a trojan). Removed files are stored in older commits (until the user explicitly removes those).
Website: github.com/ynikitenko/yarsync
Support:
Developer: Yaroslav Nikitenko
License: GNU General Public License v3.0

YARsync is written in Python. Learn Python with our recommended free books and free tutorials.
Related Software
| File Synchronization Tools | |
|---|---|
| Syncthing | Continuous file synchronization program |
| Unison | File-synchronization tool for POSIX-compliant systems |
| Rclone | Command line program to sync files and directories |
| rsync | Fast incremental file transfer |
| Cryptomator | Multi-platform transparent client-side encryption of files in the cloud |
| FreeFileSync | Folder comparison and synchronization software |
| syncBackup | Backup and mirror your drives |
| Seafile | Coud storage system with privacy protection and teamwork features |
| Grsync | Graphical user interface for rsync |
| Lsyncd | Live Syncing Daemon |
| luckyBackup | Backup & sync tool |
| YARsync | Yet Another Rsync |
| Sync-in | File sync and server management |
| osync | Two way filesync script running on Bash |
| Celeste | GUI file synchronization client |
| ByteSync | File synchronization, backup, and deduplication |
| bita | Differential file synchronization over HTTP |
| Spacedrive | File manager powered by a virtual distributed filesystem |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

