phe*_*psw 3 git git-filter-branch
我在 git repo 中有一个文件,它包含敏感信息。我已在最新提交中删除了此信息。现在我想从 git 存储库中删除此文件的所有先前版本。如何才能做到这一点?
我相信它可以用 git-filter-branch 来完成,但我还没有遇到一个可以让我理解的例子。
引用 git 文档:
假设您想从所有提交中删除一个文件(包含机密信息或侵犯版权):
Run Code Online (Sandbox Code Playgroud)git filter-branch --tree-filter "rm filename" HEAD但是,如果某个提交的树中不存在该文件,则该树的简单 rm 文件名将失败并提交。因此,您可能希望将其
rm -f filename用作脚本。
所以你想运行git filter-branch --tree-filter "rm -f filename" HEAD以清除该文件的所有历史记录