【问题标题】:What is the correct way to remove files from hg repo after stripping?剥离后从 hg repo 中删除文件的正确方法是什么?
【发布时间】:2018-10-10 15:31:05
【问题描述】:

我错误地向 hg repo 添加了一个大文件。然后我剥离了变更集,但注意到 repo 大小(.hg 文件夹大小)并没有减少。我已经完成了hg convert <old_repo> <new_repo>,并且尺寸确实减小了。所以它有点适合我,但我想了解这个概念。

如果这些文件不再存在于历史记录中,那么将它们保留在 repo 中的目的是什么?

我从历史记录中删除文件的方法是最佳实践吗(忘记我不应该首先添加它们)?

【问题讨论】:

    标签: mercurial


    【解决方案1】:

    我怀疑这可能是原因:

    当您剥离变更集时,mercurial 将创建一个变更包并将其放置在 .hg/strip-backup 目录中。这允许您使用 hg unbundle 命令恢复变更集。

    这可以使 .hg 的大小看起来不变。如果您不打算从中恢复此文件,则可以删除此文件,并且 .hg 的大小应反映这一点。

    注意:strip 将打印它创建的捆绑文件的名称。您还可以使用 --no-backup 选项告诉 strip 不要创建捆绑文件。

    【讨论】:

    • 这真是太好了!我正在使用 TortoiseHg,通常不读取控制台输出。所以我没有机会注意到文件名。而且我根本不认为未选中“无备份”选项会导致创建备份。感谢您的精彩解释!
    • 很高兴能帮到你
    • 读者注意——如果你要克隆一个包含所有这些备份的仓库,克隆将显示较小的文件大小。
    猜你喜欢
    • 1970-01-01
    • 2011-04-24
    • 2010-10-04
    • 2013-10-16
    • 2013-02-13
    • 1970-01-01
    • 2014-03-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多