La taille des commits Git varie en fonction de la compressibilité des fichiers et de la structure des répertoires. Les expériences montrent qu'un dépôt vide occupe environ 64 828 octets, tandis que l'enregistrement de 250 fichiers minuscules ajoute 47 640 octets. Un changement de 3 octets dans un répertoire de 50 fichiers coûte 17 145 octets, et un changement dans un seul fichier ajoute seulement 8 709 octets.
Les fichiers plus volumineux, comme un binaire de 583 Ko ou un fichier source de 16 Mo, entraînent des tailles de 297 873 octets et 1 622 188 octets respectivement. La compression zlib de Git et l'optimisation des packfiles réduisent la redondance, ce qui rend le système très efficace : il stocke seulement 10 à 50 % de la taille originale du fichier. Chaque commit crée de nouveaux objets, mais le système est conçu pour minimiser les surcoûts même pour les changements infimes.
Source: Hacker News · Résumé par HeadlinesBriefing