这条提示通常出现在你准备切换分支(`git checkout` / `git switch`)或拉取更新(`git pull`)之前,Git 发现“工作树”里有未处理的改动,怕切换后内容被覆盖或冲突。 一句话:**要么把改动“收”起来,要么先“丢”掉**,再签出。下面给 3 种常见场景,按需要抄即可。 --- 1. 想保留改动,只是暂时切换分支把当前改动“存抽屉”: ```bash git stash push -m "临时保存" ``` 然后随便 checkout;等你回来再: ```bash git stash pop ``` 改动原样恢复。 2. 改动都不要了,直接丢弃危险但干净,不可恢复: ```bash git reset --hard HEAD # 撤销已跟踪文件的修改 git clean -fd # 删掉新增未跟踪的文件/夹 ``` 工作树瞬间变干净,再 checkout 就不会报错。 3. 改动很重要,先提交再去别的分支 ```bash git add . git commit -m "WIP: xxx功能未完成" ``` 提交完再切换;等后续继续开发即可。 --- 30 秒自检清单 ```bash git status # 看看到底哪些文件“脏”了 git stash list # 确认已有哪些“抽屉” ``` 按上面 3 选 1,清理完再 `git checkout <目标分支>`,提示自然消失。 Loading... 这条提示通常出现在你准备切换分支(`git checkout` / `git switch`)或拉取更新(`git pull`)之前,Git 发现“工作树”里有未处理的改动,怕切换后内容被覆盖或冲突。 一句话:**要么把改动“收”起来,要么先“丢”掉**,再签出。下面给 3 种常见场景,按需要抄即可。 --- 1. 想保留改动,只是暂时切换分支把当前改动“存抽屉”: ```bash git stash push -m "临时保存" ``` 然后随便 checkout;等你回来再: ```bash git stash pop ``` 改动原样恢复。 2. 改动都不要了,直接丢弃危险但干净,不可恢复: ```bash git reset --hard HEAD # 撤销已跟踪文件的修改 git clean -fd # 删掉新增未跟踪的文件/夹 ``` 工作树瞬间变干净,再 checkout 就不会报错。 3. 改动很重要,先提交再去别的分支 ```bash git add . git commit -m "WIP: xxx功能未完成" ``` 提交完再切换;等后续继续开发即可。 --- 30 秒自检清单 ```bash git status # 看看到底哪些文件“脏”了 git stash list # 确认已有哪些“抽屉” ``` 按上面 3 选 1,清理完再 `git checkout <目标分支>`,提示自然消失。 最后修改:2025 年 12 月 29 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏