当前位置: 首页 > news >正文

Debug-010-git stash的用法及使用场景

问题原因:

        其实也不是最近,就是之前就碰到过这个问题,那就是我正在新分支开发新功能,开发程度还没有到可以commit的程度,我不想提交(因为有些功能没有完全实现,而且没有自测的话很容易有问题,提交了之后看修改过的代码也不方便,而不提交又不能切换分支。),这时候生产环境有紧急问题需要改bug,那我要怎么在不提交代码的情况下切换分支去修改bug呢?(我以前的做法就是直接在新功能的分支上提交一下代码,然后再切到有bug的分支上,其实这样也没啥,就是对自己要求高了之后,感觉不应该在提交记录中存在一次这样的记录)因此git stash应运而生,就可以解决这个情况。

介绍:

git stash :

它会保存当前工作进度,会把暂存区和工作区的改动保存到一个未完结变更的堆栈中;

执行完这个命令后,再运行 git status命令,就会发现当前是一个干净的工作区,没有任何改动。

备注:git stash并不会把代码提交到远程仓库,如果需要添加备注说明可以用下面这个:

git stash save '备注'

相关命令:

//查看所有隐藏, 每一行的冒号前面的字符串就是标识此隐藏的idgit stash list	// 重新显示标识为 id 的隐藏(list中不会删掉记录)git stash apply	 + id//git apply恢复隐藏后, 需要手动删除 list 列表中的记录git stash drop + id//恢复最新的进度到工作区 (list中会删掉恢复id的那一条记录)git stash pop	//恢复指定的进度到工作区git stash pop + id

一般使用经验:

(1)一般的话其实只会有一条记录即可,但是还是应该先用git stash list看一下stash的记录

避免出错。例如有以下四条记录:

如果想回到3版本,就使用:

git stash apply 3

这时候其他版本不想要了,就删掉即可,3版本恢复之后也可以把list中的3也删除掉。

git stash drop 0
git stash drop 1
git stash drop 2

(2)所以一般的流程就是:先git stash一下,然后git branch 查看分支,再然后git checkout去切换分支,然后改bug,完了提交。最后切换来新功能分支,在使用git stash list 先查看,接着git stash apply (+id)(或者git stash pop(+id))去恢复代码即可。

(3)注意git stash apply和git stash pop的区别(这个看个人习惯,其实我们项目中放在stash 里面估计也就一条记录,所以恢复完直接删掉也行

(4)补充一下:如果list中的记录比较多,可以使用git stash clear一键全清除,但是要谨慎哦。

总结:

        现在可以去test一下,敲一遍就明白区别了。

http://www.lryc.cn/news/351907.html

相关文章:

  • RustGUI学习(iced/iced_aw)之扩展小部件(二十五):如何使用tab部件来创建tab多页面切换?
  • P2P服务端模型配合 Tool.net P2pServerAsync 类使用
  • Python语法学习之 - 生成器表达式(Generator Expression)
  • docker所在磁盘空间不足 迁移数据
  • 15、24年--信息系统管理——管理要点
  • 如何使用 CapSolver 扩展找到 Google reCAPTCHA 站点密钥?
  • 安卓分身大师4.6.0解锁会员安卓14可用机型伪装双开多开
  • 攻防世界-mobile-easy-app详解
  • 【简单介绍下爬山算法】
  • Android App启动流程和源码详解
  • SQL的多表联查
  • 瑞芯微RV1126——人脸识别源码分析
  • springboot 两个相同类型的Bean使用@Resouce加载
  • 代码随想录算法跟练 | Day3 | 链表Part1
  • 虚拟化技术[1]之服务器虚拟化
  • WPF之容器标签之Canvas布局标签
  • AIGC绘画设计基础-建筑设计应用
  • Pinia:状态管理库
  • Mokito的一些API
  • 前端已死? Bootstrap--CSS组件
  • codewars check_same_case 题解
  • 【Text2SQL 经典模型】X-SQL
  • 蓉耀·时尚双子星------Yestar艺星首家星美学概念院璀璨启航
  • Undet for SketchUp 2023.3 点云建模软件 支持支持草图大师sketchup2021-2022-2023
  • CHI dataless 传输——CHI(4)
  • vue3第三十节(vue3 vite中使用sass)
  • blender 烘焙渲染图片,已经导出fbx,导出贴图。插件生成图片
  • ASO行业面临洗牌,苹果应用商店加搜索广告!
  • Labelme自定义数据集COCO格式【实例分割】
  • 【网络安全】Linux 应急响应-溯源-系统日志排查知识点