先来思考一下,为什么会使用 stash 命令?

在项目开发中,基本都会遇到这样的情况:本来你在自己的分支上愉快的开发功能A,但是突然加了一个优先级很高的需求B或者有bug需要先修复掉。但这个时候,你新做的功能A刚开发到一半,总不能先提交A再开发B,或者直接拉个新分支切过去吧?(可以倒是可以,但是不推荐)

在这里,我们就会使用到 git stash 命令。

1、git stash

暂存工作区修改的内容

可以stash多次,从最近一次的commit读取相关内容。 

2、git stash pop

和 git stash 相反,git stash pop 是恢复暂存的工作区内容

值得注意的是, git stash pop 获取到的是最近一次stash进去的内容,也就是说如果stash两次或者多次,那么恢复的是最新一次stash进去的内容。

那要怎么查看stash了多少次呢?

3、git stash list

查询工作区所有stash的列表

 最后的结果,可能如图:

可以看到,我本地是有6个暂存的。如果想恢复stash@{2},只需要:

4、git stash apply

git stash apply stash@{2}

如果不指定,直接 git stash pop 默认恢复的就是最新一次stash的哦。所以,如果暂存了多次,就要小心啦。

万一我心血来潮觉得之前暂存的都不需要了,想要清空怎么办?

5、git stash clear

清空stash 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐