如何刷新长期回购的git历史,因为它的规模巨大?



这是一个非常大的本地git仓库,因为它有很长的历史。我想删除所有在20121-01-01之前的历史快照。我怎样才能做到呢?

你不能这样做,否则会导致提交哈希值的改变和破坏。如果您使用多个分支,这些分支也可能断开连接。当你使用filter-repo或filter- branch做任何事情时,都要格外小心。

要使用真正大的存储库,您可以查看浅克隆,部分克隆,稀疏签出或微软的Git虚拟文件系统。微软使用它的虚拟文件系统驱动程序来处理Windows和Office的git仓库,每个仓库的大小都是100个GB。

为了防止一个repo变得太大,你也可以看一下Git-LFS来外部化大文件,但是转换一个现有的repo也会导致所有的提交哈希值改变。

最新更新