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一下,敲一遍就明白区别了。
相关文章:
Debug-010-git stash的用法及使用场景
问题原因: 其实也不是最近,就是之前就碰到过这个问题,那就是我正在新分支开发新功能,开发程度还没有到可以commit的程度,我不想提交(因为有些功能没有完全实现,而且没有自测的话很容易有问题,提…...
RustGUI学习(iced/iced_aw)之扩展小部件(二十五):如何使用tab部件来创建tab多页面切换?
前言 本专栏是学习Rust的GUI库iced的合集,将介绍iced涉及的各个小部件分别介绍,最后会汇总为一个总的程序。 iced是RustGUI中比较强大的一个,目前处于发展中(即版本可能会改变),本专栏基于版本0.12.1. 概述 这是本专栏的第二十五篇,主要讲述tab页面切换部件的使用,会结…...
P2P服务端模型配合 Tool.net P2pServerAsync 类使用
Tool.Net 支持的 P2P 服务器模型实例 说明服务器部分相关代码相关调用实例Tcp版本Udp版本 最后附一张思维图 说明 当前文章,仅是Tool.Net 开源库的一个缩影。本次更新V5.0版本以上提供支持。可以提供简单实现P2P功能用于业务开发。 服务器部分相关代码 完整代码&…...
Python语法学习之 - 生成器表达式(Generator Expression)
第一次见这样的语法 本人之前一直是Java工程师,最近接触了一个Python项目,第一次看到如下的代码: i sum(letter in target_arr for letter in source_arr)这条语句是计算source 与 target 数组中有几个单词是相同的。 当我第一眼看到这样…...
docker所在磁盘空间不足 迁移数据
1.查看原始目录docker info | grep "Docker Root Dir" 一般在/var/lib/docker 2.停止docker service docekr stop 3.移动数据 注意 移动前不要创建docker目录! mv /var/lib/docker /home/docker 4.进入目录查看是否与原始目录相同,确认一…...
15、24年--信息系统管理——管理要点
1、数据管理 数据管理使指通过规划、控制与提供数据和信息资产的职能,包括开发、执行和监督有关数据的计划、策略、方案、项目、流程、方法和程序,以获取、控制、保护、交付和提高数据和信息资产价值。 DCMM定义了数据战略、数据治理、数据架构、数据应用、数据安全、…...
如何使用 CapSolver 扩展找到 Google reCAPTCHA 站点密钥?
网站安全性在当今至关重要,Google reCAPTCHA 作为防止垃圾邮件和滥用行为的前线防御系统起着关键作用。reCAPTCHA 站点密钥是确保网站交互由人类驱动的唯一标识符。了解如何找到这个密钥对于网站管理员和开发人员来说至关重要。 什么是 reCAPTCHA 站点密钥 reCAPT…...
安卓分身大师4.6.0解锁会员安卓14可用机型伪装双开多开
需登录解锁会员功能,除了加速进入不能, 其他主要功能都是可以使用,由于验证较多一些功能需要特定操作使用,进行伪装时请不要直接伪装,先生成成功后再进行自定义伪装!链接:https://pan.baidu.com…...
攻防世界-mobile-easy-app详解
序言 这道题网上很多分析,但是分析的都是arm版本的,我选了arm64的来分析,arm64相比arm难度高一些,因为arm64编译器搞了inline优化,看起来略抽象 分析 这道题逻辑很简单,输入flag然后一个check函数验证&a…...
【简单介绍下爬山算法】
🌈个人主页: 程序员不想敲代码啊 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家 👍点赞⭐评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共…...
Android App启动流程和源码详解
前言 之前看了些App启动流程的文章,但是看得很浅显,隔了没多久就忘了,自己抓耳挠腮的终于看完了,看得头疼哦。因为很多是个人理解,大哥们主打一个7分信,2分思考,1分怀疑哈。 主要看的源码是An…...
SQL的多表联查
这里我先附上两张表的数据: Orders 表: OrderIDCustomerID1321324NULL Customers 表: CustomerIDCustomerName1Alice2Bob3Charlie4David INNER JOIN 🤝 概念: INNER JOIN(内连接)返回两个表中匹配的记录。如果某条…...
瑞芯微RV1126——人脸识别源码分析
本节内容主要分为3部分,第一部分是流程结构图;第二部分为人脸识别代码流程;第三部分为具体的代码分析。 1.流程结构图 2.人脸识别代码流程 1、人脸数据的初始化: init_all_rockx_face_data();init_face_data();2、创建rtsp会话,这里包括发…...
springboot 两个相同类型的Bean使用@Resouce加载
问题描述 有两个相同类型的Bean 使用Service等注解注入或者Bean注入启动以后报错: qualifying bean of type com.fasterxml.jackson.databind.ObjectMapper available: expected single matching bean but found 2提示有相同的类型两个。 解决 * 每个Bean Resour…...
代码随想录算法跟练 | Day3 | 链表Part1
个人博客主页:http://myblog.nxx.nx.cn 代码GitHub地址:https://github.com/nx-xn2002/Data_Structure.git Day3 203.移除链表元素 题目链接: https://leetcode.cn/problems/remove-linked-list-elements/ 题目描述: 给你一个…...
虚拟化技术[1]之服务器虚拟化
文章目录 虚拟化技术简介数据中心虚拟化 服务器虚拟化服务器虚拟化层次寄居虚拟化裸机虚拟化VMM无法直接捕获特权指令解决方案 服务器虚拟化底层实现CPU虚拟化内存虚拟化I/O设备虚拟化 虚拟机迁移虚拟机动态迁移迁移内容:内存迁移迁移内容:网络资源迁移迁…...
WPF之容器标签之Canvas布局标签
Canvas: 定义一个区域,可在其中使用相对于 Canvas 区域的坐标以显式方式来定位子元素。 实例 可以在子标签使用Canvas属性设置定位 <Canvas Width"500" Height"300"><StackPanel Width"100" Height"100"Backgro…...
AIGC绘画设计基础-建筑设计应用
一、AI及AIGC 对于AI大家都不陌生,但是AIGC这个概念好多人其实不大清楚。“AI”是指人工智能技术本身,而“AIGC”是指基于人工智能技术而生成的内容。 生成式人工智能——AIGC(Artificial Intelligence Generated Content)&…...
Pinia:状态管理库
Pinia 为vue设计的一个现代化的状态管理库,vue3生态系统中的一个核心组件, 专为利用Vue3的新特性设计,替代Vuex称为Vue应用的状态管理标准,提供了更简洁的API,更好的类型安全,以及易于调试的功能 状态管理 在前端应用开发中,用来集中管理和协调应用程序状态的一种工具.在这…...
Mokito的一些API
Mockito是一个Java单元测试框架,它允许开发者创建和配置模拟对象(mock objects),以便在隔离的环境中测试代码,尤其是当实际对象难以构造或其行为不确定时。下面是一些核心的Mockito API及其使用场景和代码示例。 基础…...
爱波克 Apoquel(奥拉替尼)作用与上市,全球首个犬用 JAK 抑制剂
奥拉替尼是全球首个获批用于兽医的 JAK 抑制剂,2013 年 5 月美国 FDA 获批,2023 年 6 月推出咀嚼片剂型,提升用药依从性Zoetis。其作用机制为选择性抑制 JAK1,阻断 IL-4、IL-13、IL-31 等关键致痒与促炎细胞因子信号,从…...
Android设备标识获取难题:个人开发者如何合规获取OAID?
Android设备标识获取难题:个人开发者如何合规获取OAID? 【免费下载链接】Android_CN_OAID 安卓设备唯一标识解决方案,可替代移动安全联盟(MSA)统一 SDK 闭源方案。包括国内手机厂商的开放匿名标识(OAID&…...
Chrome插件开发实战指南:从入门到发布的完整开发教程
随着浏览器生态不断发展,Chrome插件(Chrome Extension)已经成为提高工作效率、实现自动化操作、数据采集以及浏览器功能增强的重要工具。无论是广告拦截、网页翻译、SEO分析,还是自动化办公,背后几乎都离不开Chrome插件技术。 尤其是在AI时代,Chrome插件已经不仅仅是“浏…...
如何快速一键获取Steam游戏清单?Onekey工具完整使用指南
如何快速一键获取Steam游戏清单?Onekey工具完整使用指南 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey 你是否曾经为了获取Steam游戏的清单文件而花费大量时间查找App ID、配置解锁…...
创业团队如何建立技术文化
创业团队如何建立技术文化 前言 我们团队从3个人发展到10个人,文化问题开始凸显: 有人觉得应该追求代码完美,有人觉得快速上线更重要有人喜欢加班赶进度,有人坚持 Work-Life Balance有人保守求稳,有人激进创新 后来我意…...
Awesome Made by Brazilians 路线图深度分析:巴西开发者开源项目的未来发展趋势预测
Awesome Made by Brazilians 路线图深度分析:巴西开发者开源项目的未来发展趋势预测 【免费下载链接】awesome-made-by-brazilians 🇧🇷 A collection of amazing open source projects built by brazilian developers 项目地址: https://g…...
CANN/Ascend C 基于语言扩展层C API编程
基于语言扩展层C API编程 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。 项目地址: https:…...
STL转STEP格式转换实战指南:如何实现CAD模型的无缝迁移与工程化应用
STL转STEP格式转换实战指南:如何实现CAD模型的无缝迁移与工程化应用 【免费下载链接】stltostp Convert stl files to STEP brep files 项目地址: https://gitcode.com/gh_mirrors/st/stltostp 在数字化制造与工程设计领域,STL格式作为3D打印的标…...
TPU加速GAN训练:从Colab实操到混合精度调优
1. 项目概述:为什么在Kaggle/Colab上用TPU训GAN不是“炫技”,而是刚需你有没有试过在笔记本电脑上跑一个DCGAN,等了47分钟,loss曲线刚抖两下,风扇就发出濒死的哀鸣?或者在普通GPU上训StyleGAN2,…...
绝地求生罗技鼠标宏压枪脚本终极配置指南:从零到精通的完整解决方案
绝地求生罗技鼠标宏压枪脚本终极配置指南:从零到精通的完整解决方案 【免费下载链接】logitech-pubg PUBG no recoil script for Logitech gaming mouse / 绝地求生 罗技 鼠标宏 项目地址: https://gitcode.com/gh_mirrors/lo/logitech-pubg 在《绝地求生》这…...
