Installer Rsync en complément de GitBash

tutoriel : après avoir installé Git + GitBash sur votre poste Windows (depuis https://gitforwindows.org/ par exemple), vous souhaitez avoir l’indispensable rsync disponible dans vos commandes de la console GitBash.

, par clem

Installation de 7zip version "7 Zip Zstd" :

Afin de pouvoir décompresser les archives au format zst utilisées dans la suite de ce tutoriel il est nécessaire d’avoir l’utilitaire 7zip installé avec les codecs Zstd.
La méthode la plus rapide est la suivante :

  • si vous avez déja 7zip installé sur votre Windows, désinstallez le dans les règles (i.e. via le panneau de configuration > Programmes et fonctionnalités
  • récupérez la dernière version complète de "7zip Zstd édition" sur https://github.com/mcmilk/7-Zip-zstd/releases (fichier de la forme 7z21.02-zstd-x64.exe)
  • installez le classiquement
  • optionnellement, pour vérifier que votre installation est OK, ouvrez une invite de commande GitBash dans le dossier d’installation de 7zip et lancez la commande suivante :
    ./7z.exe i
    Si tout est OK, dans la réponse à cette commande vous devriez avoir dans la section Codecs :
    0  ED  4F71101 ZSTD

Récupérez et installez l’exécutable de rsync :

Maintenant que votre Windows est OK avec la décompression des archives .zst, il faut télécharger l’utilitaire rsync depui le repository de msys2.org.

  • rendez vous sur le dépot http://repo.msys2.org/msys/x86_64/ et téléchargez la dernière version de l’archive de rsync (ici rsync-3.2.3-1-x86_64.pkg.tar.zst).
    Un double clic sur le fichier devrait vous l’ouvrir dans le File Manager de 7zip (si ce n’est pas le cas, il faudra associer l’extension .zst avec l’exécutable 7zFM.exe du répertoire d’installation de 7Zip)
    Toujours dans le File Manager de 7Zip ouvrez (en double cliquant dessus) le fichier rsync-3.2.3-1-x86_64.pkg.tar puis les sous-dossiers usr/bin/.
    Un clic droit + "extraire" sur le fichier rsync.exe vous permet de récupérer ce fichier.
  • copiez ce fichier et collez-le dans le sous-répertoire mingw64\bin de votre installation de Git (par défaut C :\Program Files\Git\mingw64\bin)

Récupérez et installez les dépendances de rsync.exe

Testez votre installation de rsync : lancez GitBash avec la commande
rsync -v
A priori vous devriez avoir un message d’erreur précisant qu’il vous manque une dépendance de rsync, quelque chose comme :
C:/Program Files/Git/mingw64/bin/rsync.exe: error while loading shared libraries: msys-zstd-1.dll: cannot open shared object file: No such file or directory
Il faut donc aller récupérer chez msys2.org les dll utilisées par rsync et les placer dans la même répertoire de votre installation de Git.
Ce qui donne comme séquence pour la dépendance msys-zstd-1.dll :

  • sur http://repo.msys2.org/msys/x86_64/ récupérer l’archive de la dll : ici libzstd-1.5.0-1-x86_64.pkg.tar.zst
  • ouvrez le fichier .zst avec 7Zip puis le fichier tar et entrez dans le sous-dossier usr/bin/ pour extraire le fichier .dll (ici msys-zstd-1.dll)
  • copiez / collez ce fichier dans le dossier d’installation de rsync dans Git (Git\mingw64\bin)
  • dans GitBash relancez l’appel de rsync avec rsync -v : si vous obtenez à nouveau une erreur, récupérez et installez la dll manquante de la même manière.

Exemple : pour la version rsync-3.2.3-1-x86_64 il faut :

  • msys-zstd-1.dll (fichier libzstd-1.5.0-1-x86_64.pkg.tar.zst)
  • msys-xxhash-0.8.0.dll (fichier libxxhash-0.8.0-1-x86_64.pkg.tar.zst)

Références :