2 unstable releases

0.2.0 Oct 5, 2021
0.0.0 Aug 30, 2021

#24 in #rsync

BSD-3-Clause

105KB
2.5K SLoC

Build Status Crates.io Documentation License

What is this?

This is an rsync clone written in the Rust programming language. It is intended to provide the functionality of rsync, rdiff, and zsync in one single program, as well as some additions such as caching file signatures to make repeated synchronizations faster. It will also provide a library, allowing to use the functionality in your own programs.

Current status

Core functionality is there. You can index and sync local folders, and sync over SSH.

The next step is implementing syncing over HTTP, and syncing "offline" (diff/patch).

How to use

$ syncfast sync some/folder ssh://othermachine/home/folder

Notes

The rsync algorithm: https://rsync.samba.org/tech_report/ How rsync works: https://rsync.samba.org/how-rsync-works.html

zsync: http://zsync.moria.org.uk/

Compression crate: https://crates.io/crates/flate2

Dependencies

~26–35MB
~547K SLoC