呐,假设误操作将敏感信息上传到了Git,如何优雅的移除敏感信息呢?一般姿势是rebase吧,个人来看挺麻烦的,恰逢最近自己智障,下沉代码的时候因为忽略的路径变了,把配置文件给传到仓库中了,所以要更正下这个问题,搜索了解实测了一下,具体方法如下:
假设要移除的文件路径(相对路径)如下:
code/config.yaml
则,执行如下指令:
git filter-branch --index-filter \
'git rm --cached --ignore-unmatch code/config.yaml' \
--tag-name-filter cat -- --all
之后,使用指令硬更新远端:
git push origin HEAD --force
严格来说,这其实和reabse类型,都是危险操作,但是呢,必要的时候倒算是灵丹妙药。
参考资料
Git: How to remove file from historical commit?
如您从本文得到了有价值的信息或帮助,请考虑扫描文末二维码捐赠和鼓励。
如本文对您有用,捐赠和留言 将是对我最好的支持~(捐赠可转为站内积分)
如愿意,请向朋友推荐本站,谢谢。
尊重他人劳动成果。转载请务必附上原文链接,我将感激不尽。