Git学习笔记(二) git stash
1、使用场景
当我们在某一条分支上开发新功能时,突然有个紧急的错误需要修复
这时,我们不得不暂停手头上的工作,切换到另外的分支去修复错误
但是,新功能做到一半,既不能提交,也不能删除,那该怎么办呢
我们可以先把当前的更改保存起来,等处理完错误后再恢复出来,git stash
就是这样的一个用法
它可以将工作区和缓存区的更改保存到一个栈结构中,等后面需要的时候再恢复
2、基本用法
- 保存:
git stash
> # 将当前工作区和暂存区的更改保存到一个栈结构
> git stash
> # 将当前工作区和暂存区的更改保存到一个栈结构,并附带一个信息
> git stash save "message"
> # 将当前工作区和暂存区的更改保存到一个栈结构,包括新增的文件
> git stash -u
> git stash --include-untracked
> # 将当前工作区和暂存区的更改保存到一个栈结构,包括新增的文件以及忽略的文件
> git stash -a
> git stash --all
- 查看栈中保存的更改:
git stash list
> # 查看栈中保存的更改
> git stash list
- 查看更改的具体内容:
git stash show
> # 查看栈中第一个更改的具体内容
> git stash show
> # 查看栈中指定的更改的具体内容
> git stash show <stash id>
- 恢复:
git stash apply
> # 将栈中的第一个更改恢复到当前工作区和暂存区
> git stash apply
> # 将栈中的指定的更改恢复到当前工作区和暂存区
> git stash apply <stash id>
- 删除:
git stash drop
> # 删除栈中的第一个更改
> git stash drop
> # 删除栈中的指定的更改
> git stash drop <stash id>
- 恢复 & 删除:
git stash pop
> # 将栈中的第一个更改恢复到当前工作区和暂存区,同时删除栈中的第一个更改
> git stash pop
> # 将栈中的指定的更改恢复到当前工作区和暂存区,同时删除栈中的指定的更改
> git stash pop <stash id>
- 清空:
git stash clear
> # 清空栈中保存的更改
> git stash clear
【 阅读更多 Git 系列文章,请看 Git学习笔记 】
版权声明:本博客属于个人维护博客,未经博主允许不得转载其中文章。