我有一个存储库,其中有一个“垃圾箱”文件夹,里面有很多垃圾文件(以前的开发人员出于任何原因想要存储它们)。我想从repo中完全删除它们,因为它们占用了近1.5 GB的空间。我已经看到了这样的问题:从git/GitHub的历史中删除文件夹及其内容,但我的有点不同:最初“垃圾箱”文件在其他地方,所以我需要:
怎么可能做到呢?
您可以使用BFG回购清洁器
BFG是一个更简单、更快速的替代git-filter-分支,用于从Git存储库历史记录中清理不良数据
更快:快10-720倍
更简单:BFG并不特别聪明,而是专注于使上述任务变得容易
例子:
删除名为“my文件夹”的文件夹:
bfg --delete-folders myfolder my-repo.git
删除所有名为id_rsa或id_dsa的文件:
bfg --delete-files id_{dsa,rsa} my-repo.git
删除所有大于50兆字节的blob:
bfg --strip-blobs-bigger-than 50M my-repo.git
删除所有名为“. git”的文件夹或文件-Git中的保留文件名。从Mercurial等其他源代码控制系统迁移到Git时,这些通常会成为问题:
bfg --delete-folders .git --delete-files .git --no-blob-protection my-repo.git