如何在历史记录中找到已删除的GIT LFS文件?

时间:2018-06-12 17:13:38

标签: git git-lfs

我从GitHub收到一封电子邮件,告诉我我的Git LFS配额接近1 GB。但是,使用git lfs ls-files时,它只显示3个文件,总共大约100 MB。在过去的某个时刻,我记得在删除它之前向Git LFS添加了一个~800 MB的文件,但似乎仍然在计算着我。

该文件上会有一个“.spp”扩展名,但它不会显示在ls-files中。此时我只是想找到文件的ID,所以我希望可以从历史中删除它,但我甚至找不到该文件。

有没有办法通过git lfs历史记录找到所有添加的文件,即使它们不再存在?

感谢。

1 个答案:

答案 0 :(得分:1)

查找大型提交包含在the answers to git find fat commit中。您可以使用BFG Repo Cleaner删除历史记录中的大文件。但是,这是一个更好的解决方案。

相反,您应该将大文件历史记录转换为git-lfs。 git lfs migrate提供工具。他们都面向某些文件扩展名。

例如,运行git lfs migrate info以查找大型文件集。例如......

$ git lfs migrate info --everything
migrate: Sorting commits: ..., done                                                                 
migrate: Examining commits: 100% (296/296), done                                                    
*.html  2.3 MB  144/144 files(s)    100%
*.rb    1.7 MB  699/712 files(s)     98%

然后使用git lfs migrate import将其历史记录转换为使用Git LFS。例如,要转换所有.spp个文件...

git lfs migrate import --include='*.spp' --everything