git 暂存

背景

在开发的过程中,经常会遇到,几个分支并行进行。
当在A分支开发,突然发现有个线上bug,需要临时切换到B分支进行处理,同时,A分支上的代码还未编写完整,不想提交上去。

这个时候, git stash 的好处就提现出来了。

介绍

stash会处理工作目录的脏的状态——即跟踪文件的修改与暂存的改动——然后将未完成的修改保存到一个栈上, 而你可以在任何时候重新应用这些改动(甚至在不同的分支上)。

先用 git status 查看下那些文件发生了变化
git 暂存_第1张图片

执行git stash 把所有改动都暂存起来
此时的git stash等同于git stash push
git 暂存_第2张图片

可以给当前stash增加message,方便后续查看
image.png

此时 git status 发现当前分支变得跟没有改动时一样干净
git 暂存_第3张图片

git stash list 查看当前栈中有多少暂存记录
image.png

如果要回复栈的最新一个暂存,可以git stash pop

取暂存中的某一份 git stash apply stash@{1}
git 暂存_第4张图片
popapply都可以恢复暂存,但是,apply执行后,暂存记录还存在。pop则会从栈中移除。

更多操作,可以参考git的官方文档

你可能感兴趣的:(git)