Quels systèmes de contrôle de version serait utiles ou ont des fonctionnalités supplémentaires pour soutenir des projets qui sont principalement des fichiers binaires tels que mp3, wav ou types de fichier spécifiques à l’application propriétaire ?
Réponses
Trop de publicités?De version et de propager des fichiers binaires sans les stocker dans git, utilisez git-annex.
Prétraiter les formats compressés, de sorte que git peut les emballer de manière plus efficace, voir rezip (plus ici).
Pour avoir git show/diff/log des fichiers binaires en exportant une version texte, voir exécution de texte diff de fichiers binaires (ou définir un externe diff pilote).
Pour avoir git merge des fichiers binaires, définir une coutume de fusion pilote.
Plus de CR des systèmes de punt quand il s'agit de fichiers binaires -- ils ne peuvent pas être comparable d'un humain à comparer, et ils ne peuvent pas être fusionnés. La meilleure caractéristique est binaire-delta de stockage de changements, donc, quelques petites modifications à un fichier de 100 mo ne devient pas 300MO dans votre référentiel.
J'ai trouvé ce post sur le stockage des fichiers binaires dans le Bazar. En résumé, il est difficile de stocker des fichiers binaires sans énorme capacité de stockage à utiliser, car la plupart des formats ne peuvent pas être efficacement comparable:
Bref, la réponse, bien sûr... nous stockons binaire les deltas, mais je ne dirais pas qu'eux optimale binaire deltas.
[...]
Si vous rencontrez des problèmes avec SVN, alors je ne pense pas que binaire de diff serait de vous aider à beaucoup de toute façon, compte tenu de SVN a diff binaire.
[...]
Mais la vérité est, (plus?, de nombreuses?) les fichiers binaires n'est pas binaire diff qui bien de toute façon. Le plus souvent, elles sont comprimé, ce qui signifie une modification près du début a tendance à avoir un la réaction en chaîne sur une grande distance (peut-être le reste du fichier).
Donc, si les fichiers sont petits ou n'avez pas beaucoup de changement, aller de l'avant et à l'utilisation des VCS. S'ils sont volumineux et de changer souvent, de trouver ou d'écrire un outil spécialisé pour la gestion.
Vous voudrez peut-être jeter un oeil à Boar: "Contrôle de version simple et sauvegarde des photos, vidéos et autres fichiers binaires": http://code.google.com/p/boar/
La plupart des VCS qu'à stocker la version actuelle, en partie parce que les diff binaire peut être très grande, de sorte que le coût de la reconstitution d'un fichier binaire de deltas peut faire qu'il ne vaut pas stocker les deltas. Les choses sont différentes aujourd'hui avec les super-rapide Cpu, et la subversion maintenant stocke les fichiers binaires comme les deltas.
Le rsync algorithme a tendance à bien fonctionner avec des fichiers de texte qui changent, mais les fichiers binaires (par exemple zippé) de ne pas "comprimer" à peu près bien. Je ne sais pas comment bien la subversion de l'algorithme fonctionne, mais ils disent qu'il fonctionne aussi bien sur les binaires que sur le texte.