在代码开发的过程中,有时会将不该提交的文件误提交到Git仓库中,比如编译产生的临时二进制文件(忘了添加.gitignore),或者包含账号,密码等敏感信息的文件。临时的二进制文件放在Git仓库中没有意义,而且如果频繁改动的话,也会导致Git仓库逐渐变大,而敏感信息会导致信息泄露且不符合信息安全标准。这些不该提交的文件或内容被称为Git仓库的脏数据,需要被清理掉。重新提交一个新的变更来清理这些脏数据是远远不够的,因为从历史版本中仍然能够找到它们。本文将介绍如何使用开源工具BFG Repo-Cleaner从Git仓库的变更历史中永久清除这些脏数据。