删除Git中某文件的历史提交记录

2023-04-27 来源:飞速影视
在项目开发过程中,经常需要使用到配置文件,比如Springboot框架,会经常使用到application.yml,或者对应不同环境的配置文件,比如开发(dev)、测试(test)、演示(uat)以及生产(pro)环境。配置文件不可避免涉及到一些账号和密码信息等私密信息,比如Mysql连接的ip、端口号、账号、密码等等。在前期开发过程中可能没有仔细考虑,后期上线之后,为了安全起见,想把这些隐私信息屏蔽掉,但是已经提交的历史记录还在git上,这时候该怎么办呢?

删除Git中某文件的历史提交记录


我们发现,在Git平台并没有找到删除历史提交记录的功能。

删除Git中某文件的历史提交记录


其实也比较简单,我们利用Git Bash终端软件,输入命令来进行控制。

先备份文件


把需要操作的文件备份一次,防止后续操作之后找不到该文件。

删除包括历史


进入项目根目录下,对需要操作的文件进行命令删除,同时会删除历史记录,操作命令如下(把文件相对路径替换成自己的项目路径):
git filter-branch --force --index-filter "git rm --cached --ignore-unmatch 文件相对路径 " --prune-empty --tag-name-filter cat -- --all
注意事项1:一定要在项目的根目录下输入命令,不然执行命令会提示以下错误提示:
You need to run this command from the toplevel of the working tree.
相关影视
合作伙伴
本站仅为学习交流之用,所有视频和图片均来自互联网收集而来,版权归原创者所有,本网站只提供web页面服务,并不提供资源存储,也不参与录制、上传
若本站收录的节目无意侵犯了贵司版权,请发邮件(我们会在3个工作日内删除侵权内容,谢谢。)

www.fs94.org-飞速影视 粤ICP备74369512号