如何在不破坏父回购链接的情况下减小hg subrepo的大小?

时间:2018-02-02 21:59:44

标签: mercurial bitbucket mercurial-subrepos subrepos

我正在尝试将我的存储库上传到Bitbucket。它是一个父存储库和一些子服务器。其中一个subrepos是如此之大(并且我的连接被限制)Bitbucket在完成导入之前超时。我希望如果我使subrepo足够小,我将能够将其上传到Bitbucket并从那里获得父级repo和subrepos workign。

不幸的是,使用hg convert使subrepo变小会更改修订号,而父repo将不允许我使用较小版本的subrepo的URL代替旧的(较大的)subrepo。有没有办法在保持与父存储库的兼容性的同时缩小存储库?

当我使用hg convert时,我删除了最大的文件(这些文件都是较旧的 - 并且在我开始使用此存储库作为子参数时的早期日期)并从子库中删除了一些历史记录。它运行良好,并将我的硬盘驱动器上的subrepo的大小从1.73GB减少到328MB。不幸的是,父代repo不会切换到新的Bitbucket URL。它给出错误 abort:repository is unrelated 。当我进入subrepo并尝试编辑其hgrc以指向新URL时,会发生同样的事情。我认为选项--config convert.hg.saverev=True应该允许原始存储库的克隆使用新的存储库,但到目前为止它还没有工作。

以下是我用来缩小子参数的命令:hg convert --filemap C:/Workspace/myFilemap.txt --config convert.hg.saverev=True --config convert.hg.startrev=acc85c96fe57e1ff1def298bdd6adb3c614d2a92 C:/Workspace/Original/subrepo C:/Workspace/NewRepos/SmallerSubRepo

有关如何修复hg convert命令的提示,或者如何使用其他方法来完成同样的事情,将不胜感激。

0 个答案:

没有答案