如何清理git中的历史遗留不想要的文件
Created by: jacquesqiao
由于种种原因,git中可能提交了一些比较大的或者不合适提交的文件,但是由于git的原理,只要提交过的文件,会永远保存在git的索引中,可能会导致git库非常大而有用的文件非常少这样一种情况。
第一原则是尽量避免这种情况的发生,比如加一些自动检查文件size的hook和请有经验的人review。
但是如果已经出现这种情况,也是有办法处理的,只是非常麻烦,总的原理是重新遍历git的commit历史,一个一个重新commit,把不需要的跳过,相当于重写整个git历史,如果commit很多,那么速度会非常慢。
这里有一个比较详细的记录,供参考:https://harttle.land/2016/03/22/purge-large-files-in-gitrepo.html