GoSync est un outil CLI simple permettant la synchronisation locale de fichiers et dossiers.
Il offre des options avancées comme la synchronisation récursive, la vérification de checksum et la compression.
✅ Copie locale de fichiers et dossiers
✅ Synchronisation récursive (-r
)
✅ Vérification de l’intégrité des fichiers avec checksum SHA-256 (-c
)
✅ Mode verbose (-v
) pour afficher les détails du transfert
✅ Compression des fichiers avant synchronisation (-z
)
✅ Affichage des statistiques (nombre de fichiers copiés, taille totale, temps de transfert)
- Cloner le projet :
git clone https://github.com/SergeT/gosync.git
cd gosync
- Compiler GoSync :
go build -o gosync
Syntaxe de base :
./gosync sync [OPTIONS] "SOURCE" "DESTINATION"
✅ Exemple de synchronisation simple :
./gosync sync "dossier_source" "dossier_destination"
✅ Exemple avec options avancées :
./gosync sync -rcv "dossier_source" "dossier_destination"
👉 Ce que font ces options :
-r
: Active la synchronisation récursive (copie les sous-dossiers).-c
: Vérifie les checksums avant d’écraser un fichier.-v
: Affiche chaque fichier copié.
✅ Exemple avec compression (-z
) :
./gosync sync -zrv "dossier_source" "dossier_destination"
👉 Tous les fichiers seront compressés avant d’être copiés (.gz
).
Une fois la synchronisation terminée, gosync affiche :
📦 Nombre total de fichiers copiés
📏 Taille totale transférée (en KB/MB/GB)
⏳ Temps total de la synchronisation
Ce projet est sous licence MIT - voir le fichier LICENSE
pour plus de détails.
Si vous trouvez un bug ou avez une suggestion, ouvrez une issue sur GitHub ! 🚀
📡 Support du transfert via SSH/SFTP
📜 Ajout d’un mode log
🎛️ Interface Web pour suivre la synchronisation en direct