Hg / Git存储库损坏多少是一个问题?

时间:2011-02-26 12:58:44

标签: git version-control mercurial

环境:大约14名工程师/物理学家/数学家(阅读:没有人真正有兴趣花时间处理回购维护和类似事情)

他们将在现在的软件工程方面使用它,用于相当小的项目,但可以预期很多非代码的东西也会在那里结束(数据文件,一些图像,一些PDF和文字)文件......没有大小的东西,但它会随着源文件一起出现。)

使用Hg或Git时,此类环境中的存储库损坏程度是多少?

平台:Windows和Mac(主要是Windows)

3 个答案:

答案 0 :(得分:5)

就个人而言(使用Mercurial)我从未经历过技术上已损坏的存储库。实际上,我只说使用常规命令(添加/删除文件,提交,推送,拉取,合并)时,损坏存储库的可能性非常低。

当您开始玩历史记录时,事情会变得更加复杂,例如:永久删除变更集,rebase分支,折叠变更集 - 这些行为本身具有破坏性。但是,虽然您可以在Mercurial中破坏性地执行操作,但您必须明确启用相应的命令,并且在执行可能存在问题的命令之前经常会收到有意义的警告。

AFAIK Git在破坏存储库方面的障碍较少,因为默认情况下它支持更具破坏性的操作(Git用户,如果我错了,请纠正我)。

最后你不应该那么在意: DVCS的一大优势是每个克隆都是一个独立的完整存储库。如果存储库已损坏,则只有一个或几个开发人员受此问题影响。如果问题无法解决,请从中央或同事的回购中重新开始,并继续在该州工作。

答案 1 :(得分:3)

如果腐败意味着错误的操作会导致存储库出现奇怪状态,那么当您的同事学会使用新工具时,肯定会有一些操作。

但Git和Mercurial都提供了一些工具来修复破坏的存储库。只要您的团队受到纪律处分,我认为可以说没有无法纠正的腐败问题。

我建议您选择至少一个人作为管理员,然后花点时间考虑一下您希望提供给您的存储库的结构。

答案 2 :(得分:1)

我不担心磁盘损坏。当然,把所有东西都紧紧地包装起来会让一点点变得更加危险,但是由于所有东西都被克隆到其他地方,你不可能丢失数据。