二进制文件的Git风格备份 [英] Git style backup of binary files
问题描述
我正在将GIT版本控制系统集成到3ds max中以控制.max文件版本控制。
我用最多的文件测试了git几个星期,发现它符合我的需求,但无论如何,git对于这类任务来说有点过于复杂。我正在寻找的是这样的程序,就像(好,差不多)git那样工作,但是:
- 自然是windows程序 - git在我的网络上共享
文件夹多次失败,并摧毁了我的二进制文件。这是主要问题,我不知道如何解决它。 - 没有(甚至不尝试)处理文件内容。我认为这会加速工作流程。
- 的界面接近TortoiseGIT。
这是什么软件必须具有:
$ b
- 提交和记录命令
- 分支支持
- 是分布式的,不像Perforce那样是面向服务器的。
我测试过Mercurial,但它对于大型二进制文件。如果有人知道如何加快速度(通过禁用内容管理,我想),并使TortoiseHg功能齐全,任何信息将不胜感激。
谢谢! p>
二进制文件与VCS存在矛盾的关系,因为: 二进制文件是 Git限制的一部分
a>,因为它们往往会减慢所有工作流程,并执行不在规模上扩大规模(回购很快,因为所以问题是:你能存储这些文件是否是VCS以外的其他回购吗?
ul>
一个 Maven 回购可能(由回购经理管理,如 Nexus ,并不完全分布,但用于引用任何类型文件集的精确版本。)
JakubNarębski(actual Git contributor )正确地指出了一个能够更有效地管理大文件的Git fork项目。
>git-bigfiles alt text http: (好吧,项目的标志很棒;))
问题依然存在:VCS是管理这种大型对象的正确工具吗?
因为根据我的经验,清理历史的问题将会由于使用的磁盘空间不断增加,有一天或另一天会被问到。
并且VCS基本上不是用于清理其历史的。
Git本身无法在不改变其SHA1密钥的情况下做到这一点,使未来发布到其他公共回购存在问题。
I'm in process of integrating GIT version control system into 3ds max to control .max file versioning.
I tested git with max files for several weeks and have found that it suites my needs, but, anyway, git is little bit overcomplicated for this kind of tasks. What I'm looking for is the program that works just like (well, almost) git, but:
- is naturally born windows program - git failed several times on my network shared folders and destroyed my binary max files. This is the main problem, and I don't know how to solve it.
- doesn't (doesn't even try to) process file content. I think that speeds up the workflow.
- has interface close to TortoiseGIT.
What this software has to have is:
- commit and log commands
- branching support
- be distributed and not server oriented like Perforce.
I tested Mercurial, but it is really slow on large binary files. If someone knows how to speed it up (by disabling content management, I suppose) and have TortoiseHg fully functional, any information would be greatly appreciated.
Thank you!
Binary files have sort of an ambivalent relationship with VCS because:
- they do not merge (so the all "branching support" is not that interesting)
- they do not diff very well (meaning the storage of their history is not very compact)
- they usually can be generated
- or they can be fetched from other kind of repositories
Binary files are part of Git limits as they tend to slow down the all workflow, and do not scale in size (the repo quickly becomes too large to manage/backup efficiently).
So the question is: could you store those files is some other repo than a VCS?
A Maven repo perhaps (managed by a repo manager like Nexus, not exactly distributed, but made to reference precise version of any kind of set of files).
Jakub Narębski (actual Git contributor) rightly points to a Git fork project able to manage more efficiently big files.
git-bigfiles alt text http://caca.zoy.org/raw-attachment/wiki/git-bigfiles/git-bigfiles.png (ok, the project logo is awesome ;) )
The question remains: is a VCS the right tool for managing such large objects?
Because in my experience, the question of "cleaning up the history" will be asked one day or another, because of a ever increasing amount of disk space used.
And VCS are fundamentally not made for "clean-up" their history.
Git itself cannot do it without changing its SHA1 key, making any future publication to other public repo problematic.
这篇关于二进制文件的Git风格备份的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!