Git未做初始提交时误加系统文件,如何撤销变更且不删除本地文件
Git未初始化提交时误加大量系统文件的修复方案
问题根源
所有报错都是因为当前Git仓库仅执行了git init操作,还未生成任何提交记录,没有可回退的基准提交版本,因此所有依赖提交历史的操作(stash、checkout、reflog等)都无法生效。你添加的文件目前仅存在于Git暂存区,未写入版本历史,清理操作不会影响本地原有文件。
修复步骤
根据你的实际需求选择对应操作:
场景1:本就不打算在当前目录创建Git仓库(属于误执行git init)
如果是误将系统根目录、用户主目录初始化为Git仓库,优先选择该方案,直接删除当前目录下的.git隐藏文件夹即可彻底清除Git跟踪状态,不会修改任何本地文件:
- Linux/macOS终端执行:
rm -rf .git - Windows cmd/PowerShell执行:
rd /s /q .git
执行完成后VSCode不会再弹出提交提示。
场景2:确实需要在当前目录创建Git仓库,仅需清理误加的系统文件
- 清空暂存区所有已添加的文件记录,完全不会删除本地原有文件:
git rm --cached -r .
参数说明:
--cached:仅删除Git暂存区的跟踪记录,不触碰磁盘上的实际文件-r:递归处理所有子目录.:作用于当前目录下所有文件
- 此时运行
git status可以看到所有文件变为「未跟踪」状态,将不需要纳入版本管理的系统文件、配置文件路径写入项目根目录的.gitignore文件,后续Git会自动忽略这些文件。 - 按需添加你真正需要跟踪的项目文件到暂存区,执行第一次提交即可。
内容的提问来源于stack exchange,提问作者Luiz Henrique Sá Santos
相关产品推荐
相关产品推荐

