美文网首页
git stash的使用场景

git stash的使用场景

作者: 蝴蝶AD | 来源:发表于2019-08-28 18:06 被阅读0次

当在一个分支上正在工作,突然被打断需要紧急修复一个线上的问题,bug可能在当前分支,也或许在另一个分支,但是手上的代码还没有到能够提交的地步,又不能回滚,所以需要与即将修复的所产生的代码进行一个隔离。就可以使用git stash命令啦。

1、git stash

表示将当前分支上的未提交的代码保存起来,也就是目录中蓝色未提交的文件将会变成修改之前的黑色。此时可以进行切换分支或者拉取当前分支最新的代码。这个暂存区是可以作用于所有分支的,是一块单独的区域,后续可以将暂存的内容恢复到任意分支。

2、git stash save “这一stash的标签”

例:git stash save "test3"
表示将当前分支上的未提交的代码保存起来,同时会比第一个命令多一个标签。两种的对比如下:


image.png

蓝色的是git stash,没有加标签的
黄色的 是git stash save "标签" 加了标签的

3、git stash list

表示查看所有stash,以一个列表展示,顺序是后来居上的。可以参考上方那张图

4、git stash pop

我们既然做了一个内容的暂存,那怎么使用的?比如线上bug解决完了,回来继续开发,需要把搁置的代码恢复出来,就可以在任何分支上使用这个命令,将会把最后添加到stash list的一个stash拿出来,恢复到当前分支上,并且会删除这一条记录。换言之,使用了pop只能把一个stash恢复到一个分支上,作用于多个分支就不太可能了。后面会说git stash apply可以弥补这个需求。

5、git stash apply

区别于 git stash pop的是恢复暂存区的代码之后,不会删除记录,仍然可以多次进行对于一条记录的恢复。

6、git stash apply "stash的id" 例: git stash apply "stash@{2}"

恢复指定的stash,默认是恢复最近一条

7、git stash branch "branch name"

从最近的一条stash进行创建一个新分支

8、git stash clear

清除stash列表里面的所有记录

9、git stash show

显示最近一条stash和当前工程的差异对比

10、git stash drop + stash 名称 例:git stash drop stash@{2}

清除指定的一条stash

相关文章

  • 恢复被删除的Git stash记录

    场景: 使用Git stash命令或者SourceTree暂存了工作现场,之后误删了这个stash 恢复方法: 第...

  • git stash的使用场景

    当在一个分支上正在工作,突然被打断需要紧急修复一个线上的问题,bug可能在当前分支,也或许在另一个分支,但是手上的...

  • git stash

    git stashgit stash pop(最新的暂存) 如果不想使用最新的暂存,可以 git stash li...

  • Git stash 技巧

    Git stash常用技巧 git stash save git stash list git stash app...

  • stash 操作暂存区

    涉及命令:git stash、stash list、git stash apply、git stash drop ...

  • git部分命令实战总结【原创】

    git stash 一般与git stash pop 一起配合使用 前者的作用是把当前git add . 命...

  • 【Git】stash

    stash git stash // 加入缓存区git stash save "注释"git stash list...

  • git stash 暂存本地修改

    暂存本地开发git stash save '存储的备注'查看本地暂存的列表git stash list使用本地暂存...

  • git stash

    git stash git stash命令之后,再执行git status时,提示工作区是一个干净的工作区 使用场...

  • git 缓存区

    //第一种方式 存到暂存区git add.git stash//取出的时候使用git stash pop //第二...

网友评论

      本文标题:git stash的使用场景

      本文链接:https://www.haomeiwen.com/subject/ubmmectx.html