IDEA:Git stash 暂存分支修改的实现代码

这篇文章主要介绍了IDEA:Git stash 暂存分支修改的实现代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

场景:

当我们正在master分支开发新功能的时候,突然接到一个任务发现线上出现了一个紧急的BUG需要修复,由于没有打新分支做这部分新需求,这时正做到半途中…已经把本地代码修改得花里胡哨了,该怎么办,有什么办法快速解决吗?

这时Git stash这个非常实用的功能就派上用场了,将本分支的修改暂存起来。

涉及到的几个命令:

1、git status:查看工作区文件状态,列出已经修改的文件

image

2、 git stash save ‘自定义描述’ :暂存工作区的文件

image

3、git stash list:查看所有暂存列表

image

4、git stash pop:恢复暂存的文件,直接将最近一次 stash 的代码pop出来并删除stash记录,还原到stash隐藏之前

image

5、git stash apply id:恢复暂存的文件,和git stash pop功能一样,先通过git stash list找到记录编号,通过编号id恢复。区别在于git stash apply id不会删除stash记录。

实际中还原后就没什么必要在保存stash记录了,推荐直接用git stash pop就OK了。

image

IDEA 也可以用可视化界面直接操作:右键project > git > repository

image

拓展:找回清除的 stash 数据

我们能将代码暂存起来,当然也能将暂存区的数据删除,如果在没有恢复暂存代码的时候不小心将暂存区的数据删除了该怎么吧?

只需要用这句命令即可:

git log --graph --oneline --decorate $( git fsck --no-reflog | awk ‘/dangling commit/ {print $3}’)

找到对应的 id,然后用git stash apply id 命令直接恢复找回即可

image

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持

最新2021整理收集的一些高频面试题(都整理成文档),有很多干货,包含mysql,netty,spring,线程,spring cloud、jvm、源码、算法等详细讲解,也有详细的学习规划图,面试题整理等,需要获取这些内容的朋友请加Q君羊:547998459

猜你喜欢

转载自blog.csdn.net/p1830095583/article/details/114745527