从 Git 历史记录中删除包含一些敏感数据的文件

Deleting a file that contains some sensitive data from Git history

如何从 Git 历史记录中删除 appsettings.json 文件?

我在Git中应用了这个命令:

$git filter-branch --index-filter 'git rm --cached --ignore-unmatch appsettings.json' HEAD

但它不适用于此版本的 Git(2.30.0.windows.1)

我该如何解决?

如果我想使用 git-filter-repo 而不是 git-filter-branch,我该如何为我的案例安装和使用它?

我用过bfg-repo-cleaner.

按照以下步骤操作:

1- 在您的系统上安装 Java(对我来说是 Windows 10)。

2- 下载 bfg-repo-cleaner。 我已经下载 bfg-1.13.1 并将其放在项目文件夹中。

3- 在 Git Bash 中键入此命令:

java -jar bfg-1.13.1.jar --delete-files appsettings.json

执行后可以看到如下信息:

4- 最后输入 Git Bash 这个命令:

$ git pull
$ git push