Git 彻底清除历史记录

适用场景

  • 误提交密码、密钥、token 等敏感信息

  • 误提交大文件导致仓库臃肿

  • 需要从所有历史提交中移除某些文件

方法一:git filter-repo(推荐)

安装

pip install git-filter-repo

删除指定文件/目录(从所有历史中移除)

git filter-repo --path .env --invert-paths

git filter-repo --path secrets/ --invert-paths

删除多个路径

git filter-repo --path .env --path config/secrets.json --invert-paths

方法二:BFG Repo-Cleaner

下载 bfg.jar(需要 Java)

https://rtyley.github.io/bfg-repo-cleaner/

删除文件

java -jar bfg.jar --delete-files .env

删除目录

java -jar bfg.jar --delete-folders .idea

替换敏感文本(如密码)

echo "mypassword123" > passwords.txt

java -jar bfg.jar --replace-text passwords.txt

清理并强制推送

git reflog expire --expire=now --all

git gc --prune=now --aggressive

git push --force

方法三:git filter-branch(旧方法,较慢)

git filter-branch --force --index-filter \

'git rm --cached --ignore-unmatch .env' \

--prune-empty --tag-name-filter cat -- --all

清理

git reflog expire --expire=now --all

git gc --prune=now --aggressive

推送到远程

强制推送(会覆盖远程历史)

git push origin --force --all

git push origin --force --tags

注意事项

| 事项 | 说明 |

|--------------|-------------------------------------------------------|

| 备份 | 操作前务必备份仓库 |

| 协作影响 | 所有协作者需重新 clone 或 git pull --rebase |

| GitHub 缓存 | 联系 GitHub 支持清除缓存,否则旧提交仍可通过 SHA 访问 |

| 已泄露的密钥 | 立即轮换,重写历史不能撤回已泄露的信息 |

工具对比

| 工具 | 速度 | 易用性 | 推荐场景 |

|-------------------|------|--------|----------------|

| git filter-repo | 快 | 简单 | 首选方案 |

| BFG | 快 | 简单 | 替换敏感文本 |

| git filter-branch | 慢 | 复杂 | 不推荐,已废弃 |

相关推荐
PPIO派欧云13 小时前
PPIO参展2026上海信息消费节,全栈式AI云产品亮相
大数据·人工智能
BoomHe13 小时前
git Rebase 为任意一笔提交补上 Change-Id
android·git·android studio
白鲸开源13 小时前
干货!SeaTunnel(2.3.12)高阶用法(一):核心概念之数据流
java·大数据·github
TDengine (老段)13 小时前
TDengine 超级表/子表/普通表 — 设计理念与内部表示
android·大数据·数据库·物联网·时序数据库·tdengine·涛思数据
oo哦哦13 小时前
深度解析:星链引擎全域智能营销矩阵系统的技术架构与实践
大数据·矩阵·架构
OsDepK14 小时前
AudioSplit音频多轨免费分离工具即将发布
ide·git·python·音视频·集成学习
jiayong2314 小时前
Git 常见错误与详细解决方案
大数据·git·elasticsearch
视***间14 小时前
视程空间AIR系列——小体积藏强芯,赋能机器人/机器狗全域落地
大数据·人工智能·机器人·机器狗·ai算力·视程空间
江苏赛融科技14 小时前
打破传统管理壁垒,智慧园区重构楼宇资产管理模式
大数据·人工智能·智慧园区·楼宇资产管理·楼宇智能化
没有梦想的咸鱼185-1037-166315 小时前
农业普查大数据与AI融合的数字农业与粮食安全智慧决策
大数据·人工智能·chatgpt·数据分析