删除不小心推送到github的隐私文件历史记录
犯蠢
由于作者在本地开发的时候喜欢直接在.env.example文件直接修改隐私信息然后复制成.env文件,导致一不注意就将带有隐私信息的example文件被推送到了github,遂迅速寻找解决办法,如下使用 git-filter-repo来完成操作。
教程
- 下载 git-filter-repo
# 使用 pip 安装
pip install git-filter-repo
# 或使用 homebrew (macOS)
brew install git-filter-repo
# 或使用 apt (Ubuntu/Debian)
sudo apt install git-filter-repo
- 删除.env.example的所有历史记录并检查
git filter-repo --path .env.example --invert-paths
git log --all --full-history -- .env.example
- 强制推送所有分支和标签
git remote add origin <your-repo-url>
git push origin --force --all
git push origin --force --tags
之后你可以看到远程repo的记录已经干净