You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Git在哪些场景下会删除工作区的未跟踪文件?

Git 操作中会删除未跟踪文件的其他常见场景
  • 切换分支/提交操作:执行git checkout <分支名/提交哈希>、git switch <分支名>时,如果目标分支/提交中存在和本地工作区未跟踪文件同名的已跟踪文件,Git 会直接删除本地未跟踪文件,用分支中的文件完成切换,不会做额外提示。
  • 合并操作:执行git merge <目标分支>时,若待合入分支存在和本地未跟踪文件同名的已跟踪文件,合并逻辑会直接删除本地未跟踪文件完成合并流程。
  • 变基操作:执行git rebase <基准分支/提交>的过程中,若变基流程涉及的提交存在和本地未跟踪文件同名的已跟踪文件,Git 会移除本地未跟踪文件来完成变基步骤。
  • 硬重置后续操作:执行git reset --hard <提交哈希>后如果紧接着切换分支,也可能触发上述切换分支的未跟踪文件删除逻辑。
  • 带自动清理的拉取操作:执行git pull --rebase --autostash这类带自动暂存、自动变基参数的拉取命令时,如果远程分支内容和本地未跟踪文件路径冲突,也会触发未跟踪文件删除。
  • 多工作区操作:使用git worktree add创建关联同一仓库的新工作区时,如果目标路径下已存在和待检出分支内容冲突的未跟踪文件,Git 会直接删除对应文件完成工作区初始化。

日常操作前可以先执行git status确认未跟踪文件列表,重要的临时文件建议先添加到.gitignore规则中,避免误删。

内容的提问来源于stack exchange,提问作者Erik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 13:24:04