1、场景
当正在dev分支上开发某个项目,这时候项目中出现一个bug,需要紧急修复,但是正在开发的内容只是完成一半,还不想提交,这时可以用 git stash
命令将修改的内容保存到堆栈区,然后在当前分支进行 bug 修复,修复完成后,再次切回到 dev 分支,从堆栈中恢复刚刚保存的内容。
2、解决方式
git stash会把所有未提交的修改(包括暂存去和非暂存区的)都保存起来,用于后续恢复当前工作目录。
# 保存数据在堆栈中
git stash save 'message(保存到堆栈中的数据的信息)'
# 堆栈中的列表
git stash list
# git stash list 返回的数据如下:
stash@{0}: On master: stash1
stash@{1}: On master: stash2
# 从堆栈中将刚才保存的未提交的数据恢复出来
git stash apply/pop stash@{0}
需要说明一点,stash是本地的,不会通过 git push
命令上传到远程仓库上。
3、apply 和 pop的区别
- git stash pop 将当前stash中的内容弹出,并应用到当前分支对应的工作目录上,该命令将堆栈中最近保存的内容删除。
- git stash apply 将堆栈中的内容应用到当前目录,该命令不会将内容从堆栈中删除,也就说该命令能够将堆栈的内容多次应用到工作目录中,适应于多个分支的情况。
写在最后
如果你感觉文章不咋地
//(ㄒoㄒ)//
,就在评论处留言,作者继续改进;o_O???
如果你觉得该文章有一点点用处,可以给作者点个赞;\\*^o^*//
如果你想要和作者一起进步,可以微信扫描二维码,关注前端老L;~~~///(^v^)\\\~~~
谢谢各位读者们啦(^_^)∠※
!!!