起因
在一个仓库中加了一些敏感的域名和接口信息,有时候在开发的时候不注意把敏感信息commit了,即使在之后有意识的把账号密码等删除,但是在push到github上之后,还是可以在commit信息中找到之前被删除的敏感信息,这里记录下如何永久删除之前不小心带到commit中的敏感信息,具体可以参考 从仓库中删除敏感数据
操作
-
安装bfg, bgf是由开发者实现用来清除git大文件,敏感信息的一个工具
brew install bfg -
删除敏感信息,bgf提供了文本级别,文件级别和目录级别的操作,具体可以bgf --help打出来看看
bgf --delete-folders `要删除的文件目录` `git 仓库` -
bfg 跑完之后
git reflog expire --expire=now --all && git gc --prune=now --aggressive -
强行推到仓库即可
git push -f