Git 小技巧:用 `git stash` 把改动藏起来!

Git 小技巧:用 git stash 把改动藏起来!

你有没有遇到这种情况?

正在修改一堆文件,突然要切换分支处理另一个紧急任务,可是又不想 commit......

这时候脑子里只有一个念头:

"我能不能先把这些改动藏起来,等会儿再拿回来?"

没错,这就是 git stash 大显神通的时候!


一、什么是 git stash

通俗点讲:

git stash 会把你工作区的未提交改动 (包括新增、修改、删除的内容)"临时存起来",

然后让你的工作目录恢复到"干净"的状态。

你可以:

  • 切换分支 💨
  • 拉代码更新 🔄
  • 处理紧急 bug 🔥

等你忙完了,再把刚才"藏起来的改动"拿回来继续改!👌


二、快速上手示例

1. 你在干活:

bash 复制代码
echo "未完成的功能" >> feature.txt

改了一些东西,还没 commit。

2. 突然来了个紧急任务,要切换分支?

这时候你运行:

复制代码
git stash

终端显示:

perl 复制代码
Saved working directory and index state WIP on main: 7f3cabc 添加 hello.txt 文件

你的改动就被"藏起来"了!

运行:

lua 复制代码
git status

输出会显示:工作目录干净!


三、改动去哪儿了?

复制代码
git stash list

你会看到:

less 复制代码
stash@{0}: WIP on main: 7f3cabc 添加 hello.txt 文件

说明你的改动在 stash 里排第一位。


四、怎么拿回来?

复制代码
git stash apply

它会把最新一次 stash 的改动还原回来(不删除 stash)。

或者你想取出并从列表中移除这个 stash,用:

perl 复制代码
git stash pop

⚠️ 注意:apply 会留下 stash 副本,pop 会取出并删除。


五、有多个 stash 怎么办?

你可以用编号:

kotlin 复制代码
git stash apply stash@{1}

六、stash 也可以命名!

方便管理,用这个命令:

arduino 复制代码
git stash save "修复登录页面样式"

再运行:

复制代码
git stash list

你会看到备注内容,比默认的 WIP 更清楚!


七、stash 删除和清空

清理掉某个 stash:

kotlin 复制代码
git stash drop stash@{0}

全部清除:

arduino 复制代码
git stash clear

八、总结小抄

命令 说明
git stash 把当前改动临时存起来
git stash apply 还原最近一次 stash
git stash pop 还原并删除 stash
git stash list 查看 stash 列表
git stash show 查看某个 stash 修改了哪些文件
git stash clear 清空所有 stash
git stash save "备注" 添加带说明的 stash

九、使用场景举例

场景 推荐操作
急着切换分支但不想 commit git stashgit checkout
回到主分支合代码 git stashgit pullgit checkoutgit stash pop
临时改动太多想保存现场 git stash save "阶段性备份"

十、结语

git stash 是你的"代码备忘录",

在混乱和紧急任务中,它就像一只"时间胶囊",

让你随时暂停当前进度,又能毫无负担地重拾继续。

相关推荐
KirkLin10 小时前
Kirk:练习时长两年半的AI Coding经验
人工智能·程序员·全栈
挽淚11 小时前
(小白向)什么是Prompt,RAG,Agent,Function Calling和MCP ?
人工智能·程序员
MrSYJ16 小时前
全局和局部AuthenticationManager
java·后端·程序员
鲲鹏Talk16 小时前
燃爆了!我在字节亲历一场 AI 编程盛宴,干货多到溢出来!
人工智能·程序员
袁煦丞16 小时前
轻量级网络大佬Nginx打开公网自由之路:cpolar内网穿透实验室第625个成功挑战
前端·程序员·远程工作
AI大模型2 天前
基于 Ollama 本地 LLM 大语言模型实现 ChatGPT AI 聊天系统
程序员·llm·ollama
AI大模型2 天前
AI大模型选择指南:从ChatGPT到国产新秀,一文看懂如何选对你的AI助手
gpt·程序员·llm
AAA修煤气灶刘哥2 天前
面试必问:聊一聊Spring中bean的循环依赖问题 ?——从原理到避坑
java·后端·程序员
AI大模型2 天前
深度解析AI大模型【架构→训练→推理】核心技术全景图
程序员·llm·agent
AI大模型2 天前
一文读懂:大模型应用开发平台选型指南(附教程)
程序员·llm·agent