-
IDEA:Git stash 暂存分支修改的代码
场景:当我们正在master分支开发新功能的时候,突然接到一个任务发现线上出现了一个紧急的BUG需要修复,由于没有打新分支做这部分新需求,这时正做到半途中....已经把本地代码修改得花里胡哨了,该怎么办,有什么办法快速解决吗?这时Git stash这个非常实用的功能就派上用场了,将本分支的修改暂存起来。
涉及到的几个命令:
1、git status:查看工作区文件状态,列出已经修改的文件
![](https://img2020.cnblogs.com/blog/1289486/202008/1289486-20200805181201783-1815472519.png)
2、 git stash save '自定义描述' :暂存工作区的文件
![](https://img2020.cnblogs.com/blog/1289486/202008/1289486-20200805181447780-417065782.png)
3、git stash list:查看所有暂存列表
![](https://img2020.cnblogs.com/blog/1289486/202008/1289486-20200805182951695-2135307267.png)
4、git stash pop:恢复暂存的文件,直接将最近一次 stash 的代码pop出来并删除stash记录,还原到stash隐藏之前
![](https://img2020.cnblogs.com/blog/1289486/202008/1289486-20200805183154048-235566282.png)
5、git stash apply id:恢复暂存的文件,和git stash pop功能一样,先通过git stash list找到记录编号,通过编号id恢复。区别在于git stash apply id不会删除stash记录。
实际中还原后就没什么必要在保存stash记录了,推荐直接用git stash pop就OK了。
![](https://img2020.cnblogs.com/blog/1289486/202008/1289486-20200805183739386-1546070672.png)
IDEA 也可以用可视化界面直接操作:右键project > git > repository
![](https://img2020.cnblogs.com/blog/1289486/202008/1289486-20200806095041267-1698541555.png)
拓展:找回清除的 stash 数据
我们能将代码暂存起来,当然也能将暂存区的数据删除,如果在没有恢复暂存代码的时候不小心将暂存区的数据删除了该怎么吧?
只需要用这句命令即可:git log --graph --oneline --decorate $( git fsck --no-reflog | awk '/dangling commit/ {print $3}')
找到对应的 id,然后用git stash apply id 命令直接恢复找回即可
![](https://img2020.cnblogs.com/blog/1289486/202008/1289486-20200806100200147-1209317349.png)
-
相关阅读:
MyGame--java语言编写的打飞机游戏(附源码下载)
调用MyFocus库,简单实现二十几种轮播效果
aBowman >>可以运用到自己博客上的小插件
css通用小笔记03——浏览器窗口变小 div错位的问题
css通用小笔记02——浮动、清除(三个例子)
css通用小笔记01——导航背景
PHP强制转换类型
数据库---查询语句(三):高级查询
数据库---T-SQL语句:查询语句(二)
数据库---T-SQL语句(一)
-
原文地址:https://www.cnblogs.com/boris-et/p/13441825.html
Copyright © 2020-2023
润新知