引言
在日常开发过程中,Git 是我们管理代码版本、协作开发的重要工具。但很多新手开发者在初始化项目时,往往会忽略 .gitignore 文件的配置,导致一些本不应该提交的文件或目录被误上传到 Git 仓库。
例如:
- 开发环境生成的缓存目录;
- IDE 配置文件;
node_modules依赖目录;- 日志文件;
- 本地配置文件;
- 包含敏感信息的配置文件。
当这些文件已经执行 git add、git commit 甚至推送到远程仓库后,再想删除就不能简单地直接删除本地文件了,因为 Git 已经记录了它们的版本历史。
笔者在实际项目开发过程中,也曾因为初始化项目时没有提前配置 .gitignore,导致一些本地生成目录被误提交到 Git 仓库。后续需要手动清理 Git 跟踪记录,并添加忽略规则,避免这些文件再次进入版本管理。
本文将详细介绍如何移除 Git 中误提交的文件或目录,包括:
- 如何查看 Git 已跟踪的文件;
- 使用
git rm --cached移除文件但保留本地内容; - 如何配置
.gitignore防止再次提交; - 如何彻底删除 Git 历史中的敏感文件;
- 常见 Git 误提交问题解决方案。
通过本文教程,即使已经发生误提交,也可以快速完成 Git 仓库清理,让项目保持整洁、安全和规范。

要从 Git 追踪中删除某个文件夹(但保留本地的文件),并防止以后再次提交,可以按照以下步骤操作:
解决步骤
1. 从 Git 暂存区/追踪中移除
使用 --cached 参数可以只在 Git 的记录中删除该目录,而不影响本地电脑上的实际文件:
git rm -r --cached .playwright-cli2. 添加到 .gitignore
为了避免以后重新把这个文件夹提交上去,将其添加到 .gitignore 文件中:
echo ".playwright-cli/" >> .gitignore(或者手动打开项目根目录下的 .gitignore 文件,在末尾加上一行 .playwright-cli/)
3. 提交更改
将删除操作和 .gitignore 的修改提交到仓库:
git commit -m "chore: remove .playwright-cli from git tracking"4. 推送到远程仓库(可选)
如果之前已经把该目录推送到了远程仓库(如 GitHub / GitLab),需要推送到远程更新:
git push提示:如果想彻底把这个目录从本地磁盘上也一起物理删除,直接执行 git rm -r .playwright-cli 即可(不加 --cached)。












