git查漏补缺之 stash

git查漏补缺之 stash

Start

  • 最近在工作的过程中,遇到 git 中的stash 暂存这个命令,感觉非常有用,写一个博客记录一下。

1. stash

首先第一个就是 stash ,英译过来的意思就是 存放/贮藏。

主要的使用场景:

我正在分支A上开发功能A,突然叫我去临时解决B分支上的bug,我们需要将分支切换到B分支。但是分支A,我修改了一部分内容并不想commit 提交,这个时候就可以使用 stash 命令,将我们的修改暂存起来。

1.1 git stash

将当前的改动存储起来,当前分支还原到没有改动的位置,注意此时你所有的改动内容,会被存储在 stash 中。

1.2 git stash list

列表的形式查看当前stash的所有内容

1.3 git stash save '中文记号'

将当前的改动存储起来,并且添加一些中文记号

在这里插入图片描述

1.4 git stash pop

默认恢复git栈中最新的一个stash@{num},建议在git栈中只有一条的时候使用,以免混乱

注:该命令将堆栈中最新保存的内容删除

在这里插入图片描述

1.5 git stash apply

将堆栈中的内容恢复到当前分支下。这个命令不同于 git stash pop

  • 该命令不会将内容从对堆栈中删除,也就是该命令能够将堆栈的内容多次运用到工作目录,适合用与多个分支的场景

  • 其次,这个命令不同于 pop,我们可以指定分支的序号,指定恢复。

    • 在我实操的过程中,发现最后 git stash save 保存的内容,序号在最前面(也就是说,最新保存的内容,序号是0,越新序号越小)。

      使用方法:git stash apply stash@{$num}

1.6 其他

  • git stash drop :从堆栈中移除指定的stash。使用方法:git stash drop stash@{$num}

  • git stash clear:移除全部的stash

  • git stash show:查看堆栈中最新保存的stash和当前⽬录的差异,显⽰做了哪些改动,默认show第一个存储

End

  • 以后再遇到需要暂存代码,切换分支的场景,我们就不会慌了,核心逻辑可以借助 git stash 命令

猜你喜欢

转载自blog.csdn.net/wswq2505655377/article/details/129679376