有三种方法从历史记录删除文件:1) 使用 git filter-branch 重写历史,移除指定文件;2) 使用 git rebase 删除指定提交中的文件;3) 使用 git revert 还原对文件的更改并删除它。这些方法都是不可逆的,因此使用前应备份代码。

如何从已提交的历史记录中删除文件
方法一:使用 git filter-branch
git filter-branch 命令可用于重写历史记录,从中删除指定文件。
git filter-branch --index-filter 'git rm --cached --ignore-unmatch' HEAD
方法二:使用 git rebase
git rebase 命令允许修改提交历史记录。您可以使用它来删除文件,而无需重写整个历史记录。
在原版的基础上做了一下修正评论没有提交正文的问题特价商品的调用连接问题去掉了一个后门补了SQL注入补了一个过滤漏洞浮动价不能删除的问题不能够搜索问题收藏时放入购物车时出错点放入购物车弹出2个窗口修正主题添加问题商家注册页导航连接问题销售排行不能显示更多问题热点商品不能显示更多问题增加了服务器探测 增加了空间使用查看 增加了在线文件编辑增加了后台管理里两处全选功能更新说明:后台的部分功能已经改过前台
git rebase -i HEAD
选择要从中删除文件的提交,然后输入 d 以删除它。
方法三:使用 git revert
git revert 命令可用于还原对文件的更改。您可以使用它来删除文件,而无需修改历史记录。
git revert
注意:
- 以上所有方法都是不可逆的,因此在使用它们之前备份您的代码。
- 如果您在仓库中有多个分支,则需要使用
-f标志来强制推送到每个分支。 - 删除已提交的文件后,如果您不想提交更改,请使用
git reset HEAD --hard来还原工作树。









