git-sync - Outil CLI pour mettre en miroir directement des refs entre remotes Git sans checkout local
(github.com/entireio)- Aucun clone local nécessaire : les refs et objets sont diffusés directement du remote source vers le remote cible, sans checkout du dépôt sur le disque local
- Via un chemin de transfert Relay, les données pack de l’
upload-packsource sont envoyées directement aureceive-packcible, ce qui maintient une utilisation mémoire constante quelle que soit la taille du dépôt - Quand le relay est impossible (
force,prune,delete, etc.), un fallback Materialized récupère les objets dans un storego-giten mémoire, puis encode le packfile et pousse ; la mémoire peut être limitée avec--materialized-max-objects - Une seule commande,
git-sync sync, gère l’amorçage initial d’une cible vide jusqu’à la synchronisation continue ;git-sync planpermet un aperçu avant le push git-sync replicatealigne complètement les refs cibles sur la source, mais fonctionne en mode strict : échec si une materialisation locale est nécessaire- Prise en charge de toutes les actions de gestion des refs : création, mise à jour, mise à jour forcée avec
--force, suppression avec--prune, etc. - Toutes les actions sont planifiées avant le push, avec une sortie JSON typée directement exploitable dans des pipelines CI/automatisation
- Peut aussi être embarqué comme bibliothèque Go, avec des API stables telles que
Probe,Plan,SyncetReplicate - Unidirectionnel uniquement, pas de prise en charge SSH (Smart HTTP/HTTPS seulement), pas de daemon ni de fonction de surveillance, exécution en une seule fois
- Licence MIT
3 commentaires
Entire - une nouvelle plateforme de développement pour les agents IA
À première vue, ça a l'air bien.
Avec la popularité de
worktree, j’imagine que ça a été créé pour ça. Je vais l’essayer !