Using rsync on Windows

Introduction

This guide shows you how to set up rsync on a Windows system by leveraging Git Bash from Git for Windows.
rsync is a powerful file synchronization tool commonly used on Linux, but it can also work on Windows with a few manual steps.
No need to install WSL or Cygwin - just follow this lightweight and portable method.


Step 1: Install Git for Windows (Includes Git Bash)

  1. Download Git for Windows from the official website or directly from this link: Git 64-bit installer (v2.49.0).

  2. Alternatively, you can install it using the Windows Package Manager:

    1
    $ winget install -e --id Git.Git

After installation, you’ll have access to Git Bash, which provides a Unix-like terminal for running Linux-style commands like rsync.


Step 2: Download rsync Binary for Windows

  1. Visit the MSYS2 repository at: https://repo.msys2.org/msys/x86_64/.

  2. Download the latest version of rsync (e.g., rsync-*.pkg.tar.zst).

  3. Use a tool like 7-Zip to extract the .tar.zst file. Inside, you’ll find rsync.exe.

  4. Copy rsync.exe into the Git Bash binary folder C:\Program Files\Git\usr\bin.

We place rsync.exe in C:\Program Files\Git\usr\bin so that it’s available in the Git Bash environment’s PATH.


Step 3: (Optional) Download Dependency Libraries

If rsync.exe doesn’t run due to missing DLL files, download these common dependencies from the same MSYS2 repo:

  • libopenssl
  • libxxhash
  • libzstd

These libraries are required because rsync.exe is dynamically linked and needs them to run.

Look for .pkg.tar.zst files, extract them, and copy their contents (usually inside a usr folder) into: C:\Program Files\Git\usr

If required DLLs are missing, you’ll see an error message similar to the one below:

rsync_miss_dependencies


Step 4: Verify Installation

  1. Open Git Bash or Windows Terminal.

  2. Type the following to check if rsync works:

    1
    $ rsync --version

If the version info is displayed, you’ve successfully installed rsync on Windows!


Tips for Beginners

  • This setup runs rsync inside Git Bash, which mimics a Linux shell.
  • Make sure to extract the right files - you need the actual rsync.exe and any required .dll files.
  • If rsync doesn’t start, open Git Bash and try running it from there. You may also check for missing dependencies.