Git vs SVN: efficacité du stockage du site web

Je sais que SVN (Subversion) stocke les deltas des fichiers afin de stocker efficacement les données. Git, cependant, est un peu plus complexe. Ce que je me demande, c'est que si je devais stocker des fichiers HTML, image et js simples, et garder une trace de leurs modifications avec l'un ou l'autre, quel serait-il une meilleure efficacité de stockage et pourquoi? Je suis particulièrement intéressé par les fichiers HTML. Au début, il ne devrait pas y avoir beaucoup de différence. Cependant, au fur et à mesure que le site change, en particulier la page d'accueil, la différence devrait être évidente.

Je pourrais essayer les deux et les comparer, cependant, il faudrait beaucoup de temps pour voir des résultats réels . Par conséquent, j'ai décidé de voir lequel devrait être théoriquement plus efficace.

git sera absolument gagnant, abaissé. Il est assez courant que, pour le dépôt git avec des fichiers texte (comme HTML), les métadonnées avec tous les antécédents dans le répertoire .git seront plus petites que la caisse de l'arbre entier. (Vous voudrez peut-être exécuter git gc temps en temps, mais git l'exécutera automatiquement s'il remarque que le magasin d'objets n'est pas très optimisé).

Pour SVN, par contre, même un paiement simple sera d'au moins 2x – il contiendra tous les arbres et une sauvegarde complète dans les répertoires .svn , et il n'inclura aucun historique – et il dépendra toujours du serveur actif.

Jetez un oeil à l'article Repository Formats Matter :

Le dépôt Mozilla CVS était de 2,7 Go, importé vers Subversion, il est passé à 8,2 Go. Sous Git, il a diminué jusqu'à 450 Mo. Étant donné qu'une caisse de paiement Mozilla est d'environ 350 Mo, il est assez agréable d'avoir l'historique complet du projet (depuis 1998) dans un peu plus d'espace.

C'est difficile à expliquer, mais une fois que vous travaillez avec git même un peu, vous serez éblouis par sa vitesse impossible. Tout est tellement rapide , qu'il change la façon dont vous pensez au contrôle source et à ce que vous faites avec lui.

Il y a beaucoup d'autres avantages à git, mais je ne peux évidemment pas les couvrir tous ici. Je recommanderais de lire un bon livre à propos de cela, par exemple ProGit .