Ele*_*hoy 8 mp3 version-control
我有很多“二进制媒体”,我将它们抽象为“MP3”。我还有几台电脑,我想把整个图书馆都放在上面——台式机、媒体盒、笔记本电脑等等。简而言之,能够将所有这些机器与每台机器同步会很好其他使它们都具有相同的文件堆栈。
一个版本控制系统,与 rsync/robocopy lashup 相反,粗略的感觉似乎是要走的路。首先,涉及多个操作系统(Windows、Mac、Linux 版本)。其次,如果在更新 ID3 标签等时,系统可以只更新文件增量,而不是重新复制整个文件,那就太好了。(最后,能够通过互联网而不是局域网更新图书馆会非常酷。)
但是你的经典 CVS/SVN 系统有一个明显的缺点,那就是需要一个完整的存储库才能工作,而且我真的不希望我的 60gb+ MP3 文件夹的两个副本放在某处的机器上,以及传统上不非常处理二进制增量好。
所以,分布式版本控制在这一点上开始听起来不错。 Mercurial、git和bazaar在纸面上看起来都不错,但我对它们中的任何一个都没有任何经验。有没有人尝试用其中任何一个设置“仅限二进制”的 DVCS?有什么建议吗?陷阱?
但是您的经典 CVS/SVN 系统有一个明显的缺点,即需要完整的存储库才能工作,而且我真的不想将 60gb+ MP3 文件夹的两个副本放在机器上的某个地方,并且传统上不处理二进制增量出色地。
使用 CVS/SVN,您将拥有一个存储库和多个工作副本。因此,存储库包含每个文件一次以及每个文件的整个历史记录。工作副本包含每个文件一次以及每个文件的一些附加数据(通常约为文件的大小)。
非常粗略地:让我们假设我们的版本控制系统无法有效地存储二进制文件的差异(不是真的,但为了简单起见)。您的收藏是 60 GB MP3 文件。如果每个文件平均有 10 个修订版,并且我们忽略压缩(因为 MP3 压缩效果不好),那么您的存储库将约为 10 个。600 GB 和您的工作副本约。120GB。
因此,分布式版本控制在这一点上听起来相当不错。
在分布式系统中,每个工作副本本质上都是一个存储库,这意味着每个工作副本都包含每个文件以及历史记录。
与上述相同的假设,每个副本都会有大约。600 GB。
最重要的是,分布式系统比集中式系统需要更多的空间。
编辑:
即使您的问题更多的是关于版本控制中的大量二进制文件而不是大型二进制文件,以下帖子可能会很有趣:重新审视大型二进制文件问题。