git使用技巧-stash保存现场,恢复现场
git stash命令:保存现场、恢复现场
- 功能:将git 工作区中的数据暂存起来,保存现场,以及后续的恢复现场,类似于函数调用的保存现场、恢复现场
- 使用场景:正在开发一个代码,编写到一半,需要将代码恢复到某个版本修复某个bug上,但已经编写的工作又想保留
用法
1 | git stash # 保存当前现场。 |
注意stash保存数据时,实际是一个栈结构,基本每次最新stash进去的数据,都保存在栈顶,如果用git stash pop命令,弹出的都是最新压入的数据。
如果多次stash,想取出某一次压入的数据,可以先用查看stash的记录id:
1 | git stash list |
可以看到,git stash list的结果基本如下:
1 | stash@{0}: WIP on dev: f52c633 add merge |
然后挑选哪次弹出即可:
1 | git stash apply stash@{1} |
注意git stash apply命令不会将数据弹出、数据仍保存在stash缓存中;git stash pop则会将数据彻底弹出。
如果运用git stash apply之后,想彻底删掉某条记录,可以用:
1 | git stash drop stash@{1} |