对于我当前的项目,我使用Mercurial并将其托管在Bitbucket上。清理版本控制中未使用的旧大文件
这是我第一个真正正确使用版本控制的项目,所以我犯了一些错误。其中之一是我用代码存储了我的项目在存储库中使用的所有(未压缩)声音文件。
因此,现在即使我不再将这些文件存储在那里,第一次从服务器拉出仍然需要相当长的时间(我猜存储库会保存所有这些以便我可以如果我想恢复这些文件?),并且该项目占用的空间比应该多。
这不是一个大问题,但我想知道什么是现在修复它的好方法。此外,这种对资源库的“破坏性”编辑是否会影响与其他分支的“兼容性”(即会产生推动分支间变化的问题)?
谢谢!如果需要更多细节,请在评论中提问。
类似/有关:How to cleanup Mercurial repository?
以这种方式存储库的完整性是一把双刃剑,而我们将不得不忍受这样的错误。 – invert 2011-03-28 07:42:58
感谢您的回答。现在,通过我理解哈希与mercurial一起工作的方式来判断,如果我执行相同的确切操作(比如从变更集X中删除某个文件A),那么在repo 1和它的分支2中(其中分支发生在稍后的变更集中X的后裔),是不是应该以相同的方式重新组织(并因此继续兼容)? (我会在我的回购库的一些副本上进行实际测试,看看它是否可以实现) – 2011-03-28 14:42:53
不,因为对父变更集的引用也包含在内,所以如果父变更不一致,就会改变散列值。 – Lucero 2011-03-28 17:17:24