Git Stash:暂存技巧详解

478 字
2 分钟
Git Stash:暂存技巧详解

Stash不是你想象中的”草稿箱”#

正写到一半的代码还没到可以commit的状态,突然被拉去处理线上紧急Bug,必须切到另一个分支。把所有未完成改动一股脑复制到一个临时文件中再回来粘贴——这套低效流程是Stash专制改造的。执行git stash一行命令,将当前所有未跟踪的改动暂存到一个LIFO堆栈里,工作区还原回干净状态。切去处理紧急Bug后回来执行pop,原封不动地恢复所有改动续接工作——全程零扰动。

基础命令#

Terminal window
git stash # 暂存所有已跟踪文件的改动并附带简短说明消息便于回查
git stash pop # 恢复最近一次stash并从堆栈移除
git stash apply # 恢复最近一次stash但保留在堆栈中
git stash list # 列出当前所有stash并附带说明摘要
git stash drop stash@{n} # 删除指定stash从堆栈中抹除记录

进阶技巧#

部分暂存#

用git stash -p进入交互式patch模式,逐个文件逐个hunk确认是否暂存。适合只想临时收起来那些”不想删但暂时碍事的一部分改动”。

恢复stash到新分支#

把某个旧的stash迁移到全新分支中然后在隔离环境下测试和commit更安全整洁。

清理和归档#

git stash clear一次性清空所有stash做深度清理。

实战场景#

紧急Bug插入时的快速工作区保存和恢复、在多个分支间来回搬运改动而不污染其中的任意一个、保存实验性代码放到安全之处等待合适的回归时机再取出。Stash是每个日常多任务并行的开发者必须内建的操作习惯。

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

Git Stash:暂存技巧详解
https://yfd5224.github.io/posts/git-stash-guide/
作者
ddd
发布于
2025-11-17
许可协议
CC BY-NC-SA 4.0
公告
欢迎来到我的博客!这是一则示例公告。
分类
标签
站点统计
文章
270
分类
5
标签
960
总字数
210,898
运行时长
0
最后活动
0 天前

目录