将一个文件从 Git 仓库历史中完全删除

更新日期: 2015-12-12 阅读次数: 2175 分类: Git

背景

无意间将一张非常大的图片(6M)提交到了 Git 仓库中,导致提交到 BitBucket 非常慢 ,所以需要将其从 Git 提交历史中完全删除。

在 BitBucket 被墙的情况下,甚至出现错误

error: RPC failed; result=55, HTTP code = 200

另外一种情况就是, 提交了敏感的信息,例如密码,key 文件等。

解决

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch app/img/*' --prune-empty --tag-name-filter cat -- --all

提交的时候

git push origin master --force

参考

爱评论不评论

近期节日

2018年10月23日 霜降
2018年10月24日 联合国日
2018年10月31日 世界勤俭日
2018年11月01日 万圣节
2018年11月07日 立冬
2018年11月08日 中国记者日
2018年11月10日 世界青年节
2018年11月11日 光棍节
2018年11月14日 世界糖尿病日
2018年11月17日 国际大学生节
2018年11月20日 国际儿童日
2018年11月21日 世界问候日
查看更多节日