这篇文章主要介绍了Git如何从整个历史中删除一个文件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
从整个历史中删除一个文件
代码要开源了,但发现其中包括密钥文件或内网ip怎么办?
git filter-branch --tree-filter 'rm -f passwords.txt' HEAD
可以使用filter-branch命令,它的实现原理是将每个commit checkout出来,然后执行你给它的命令,像上面的rm -f passwords.txt,然后重新commit回去。
⚠️ 这个操作属于高危操作,会修改历史变更记录链,产生全新的commit object。所以执行前请通知仓库的所有开发者,执行后所有开发者从新的分支继续开发,弃用以前的所有分支。
感谢你能够认真阅读完这篇文章,希望小编分享的“Git如何从整个历史中删除一个文件”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!