And*_*cia 10 git repository large-files
我会在版本控制下放置大量数据,即目录结构(深度<= 5),数百个文件,大小约为500Mb).
我需要的是一个系统,可以帮助我: - 检测文件是否已被更改 - 检测文件是否被添加/删除 - 克隆整个存储库在另一个位置 - 存储"检查点"并在以后恢复
我不需要sha1进行变化检测,更快的速度是可以接受的.
git值得吗?还有更好的选择吗?
Von*_*onC 10
正如我在" Git限制是什么 "中所提到的,Git并不是为了管理大文件(或者是大型二进制文件).
如果你需要,需要Git:
注意:仍然使用Git,您可以尝试这种方法
不幸的是,
rsync对我们的目的来说也不是很完美.
- 首先,它不是真正的版本控制系统.如果你想存储文件的多个修订版,你必须制作多个副本,这是浪费,或者
xdelta它们,这是繁琐的(并且可能很慢重新组装,并且很难修剪中间版本),或者将它们检入git ,由于你的文件太大,它仍然会融化.- 加上rsync真的无法正确处理文件重命名 - 完全没有.
好吧,另外一个想法是什么:让我们将文件拆分成块,并将每个块分别检查为git.
然后git的delta压缩不会有太多的东西可以一次咀嚼,我们只需要发送修改过的块...
基于此Git仓库中gzip --rsyncable的POC.
git-annex是解决这个问题的方法.它不是将大文件数据直接存储在git中,而是将其存储在键/值存储中.然后将密钥的符号链接检入git,作为实际大文件的代理.
http://git-annex.branchable.com
| 归档时间: |
|
| 查看次数: |
4109 次 |
| 最近记录: |