当前位置:  开发笔记 > 编程语言 > 正文

在Mercurial存储库中查找大文件

如何解决《在Mercurial存储库中查找大文件》经验,为你挑选了1个好方法。

类似于这个链接,但对于mercurial.我想找到最有助于我的mercurial存储库大小的文件.

我打算使用hg convert来创建一个新的,更小的存储库.我只是不确定哪些文件对存储库大小有贡献.它们可能是已被删除的文件.

在存储库历史记录中的任何位置找到这些内容的好方法是什么?有超过20,000个提交.我正在考虑使用PowerShell脚本,但我不确定最好的方法是什么.



1> planetmaker..:

检查hg help fileset.就像是

hg files "set:size('>1M')"

应该为你做的伎俩.您可能需要对所有修订进行操作,但因为它只能在一个修订版上运行.在bash中我会尝试类似的东西

for i in `hg log -r"all()" "set:size('>400k')" --template="{rev}\n"`; do hg files -r$i "set:size('>400k')"; done | sort | uniq

可能会做的伎俩.也许它可以被优化,因为它目前有点复制,可能会运行很多; 在我的笔记本电脑上用了22000次提交的OpenTTD存储库只用了不到10分钟.

(还要检查hg帮助templates,filesgrep)


谢谢,这是奇迹.我正在使用Windows.为了完整性,powershell脚本是`hg log -r"all()""set:size('> 1024k')" - template ="{rev} \n"| Foreach {hg files -r $ _"set:size('> 1024k')">> results.txt; get-content results.txt | 排序| get-unique> results2.txt; Remove-Item results.txt; Move-Item results2.txt results.txt}`和bat文件将为'for/F%i in('hg log -r"all()""set:size('> 1024k')" - template = "{rev} \n"')DO hg files -r%i"set:size('> 1024k')">> results.txt`(虽然不排序/过滤)
推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有