Git系列:Git Stash临时保存与恢复工作进度

news/2024/5/20 5:58:18

在这里插入图片描述
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
在这里插入图片描述

  • 推荐:「stormsha的主页」👈,持续学习,不断总结,共同进步,为了踏实,做好当下事儿~
  • 专栏导航
    • Python面试合集系列:Python面试题合集,剑指大厂
    • GO基础学习笔记系列:记录博主学习GO语言的笔记,该笔记专栏尽量写的试用所有入门GO语言的初学者
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 运维系列:总结好用的命令,高效开发
    • 算法与数据结构系列:总结数据结构和算法,不同类型针对性训练,提升编程思维

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

💖The Start💖点点关注,收藏不迷路💖

📒文章目录

  • Git Stash:临时保存与恢复工作进度
    • 什么是Git Stash
    • Git Stash 参数
    • 基本用法
      • 保存进度
      • 列出所有Stash
      • 应用Stash
      • 删除Stash
      • 应用并从列表中移除Stash
    • 高级用法
      • 保存并清除工作目录
      • 保存时排除特定文件
      • 应用Stash到其他分支
    • 注意事项
    • 结语


在这里插入图片描述

Git Stash:临时保存与恢复工作进度

在Git的使用过程中,我们经常会遇到需要临时切换分支或者需要重置工作目录以开始新的工作的情况。这时,如果我们的工作尚未完成,但又不想立即提交,git stash命令就显得非常有用了。本文将详细介绍git stash的使用方法和相关操作。

什么是Git Stash

git stash是一个用于临时保存当前工作进度的命令。当你需要切换到另一个分支,或者需要一个干净的工作目录来应用某些补丁时,可以使用git stash将当前的工作进度保存起来,待以后恢复。

Git Stash 参数

  • save:保存当前的工作进度到stash列表。
  • listls:列出当前的stash列表。
  • show:显示某个stash的详细信息。
  • apply:应用stash列表中的某个stash到当前工作目录。
  • pop:应用stash并从stash列表中移除它。
  • drop:从stash列表中删除某个stash。
  • clear:清空stash列表。
  • -u, --include-untracked:同时保存未跟踪的文件。
  • -k, --keep-index:保存更改但保持索引不变。
  • -p, --patch:交互式选择stash中的变化来应用。
  • -d, --delete:删除工作进度,即使没有stash。
  • create:创建一个新的stash(不常用,通常使用 save)。
  • move:将一个stash从列表中移动到另一个位置。
  • -q, --quiet:静默模式,不显示进度信息。
  • apply:应用stash到当前工作目录。
  • pop:应用stash并从stash列表中移除。
  • list:列出所有stash。
  • show:展示stash的内容。
  • drop:从stash列表中删除特定的stash。
  • clear:清空stash列表。
  • branch:为stash创建一个新的分支。
  • --message:为stash条目添加一个消息。
  • --include-untracked:同时保存未跟踪的文件。
  • --keep-index:保存更改但保持索引不变。
  • --patch:交互式选择stash中的变化来应用。
  • --index-info:显示stash中的索引信息。
  • --no-apply:仅保存stash,但不应用它。
  • --no-stash:不保存stash,仅显示stash信息。
  • --no-trunc:不截断消息,显示完整的stash信息。

基本用法

保存进度

当你想要保存当前的工作进度时,可以使用以下命令:

git stash save "your message"

这里的"your message"是可选的,用于描述这次stash的上下文,便于将来识别。

列出所有Stash

要查看当前所有的stash列表,可以使用:

git stash list

应用Stash

当你需要恢复之前保存的工作进度时,可以使用:

git stash apply "stash@{n}"

其中stash@{n}表示stash列表中的第n个stash,n是从0开始的索引。

删除Stash

如果不再需要某个stash,可以使用以下命令删除:

git stash drop "stash@{n}"

应用并从列表中移除Stash

如果你想要应用stash并且立即将其从stash列表中移除,可以使用:

git stash pop "stash@{n}"

高级用法

保存并清除工作目录

如果你想要保存进度并且立即清理工作目录,可以使用:

git stash save --include-untracked "your message"

这个命令会保存未跟踪的文件,并且将工作目录恢复到上一个提交的状态。

保存时排除特定文件

如果你想要保存进度,但是排除某些特定文件,可以使用:

git stash save --keep-index

这个命令会保存修改和未跟踪的文件,但是不会重置索引。

应用Stash到其他分支

如果你想要将一个stash应用到另一个分支,可以首先切换到目标分支,然后使用apply命令。

注意事项

  • 使用git stash时,最好提供一条有意义的信息,这样在列出stash列表时可以更容易地识别每个stash。
  • 如果你不确定是否需要保存未跟踪的文件,可以使用--include-untracked选项。
  • 频繁使用git stash可能会导致stash列表变得混乱,定期清理不再需要的stash是个好习惯。

结语

git stash是一个非常实用的Git特性,它允许你临时保存工作进度,而不影响当前的工作目录。通过本文的介绍,你应该对git stash有了更深入的理解。在实际工作中,合理使用git stash可以大大提高你的工作效率。


❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏、分享下吧,非常感谢!👍 👍 👍

🔥🔥🔥道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

💖The End💖点点关注,收藏不迷路💖

http://www.mrgr.cn/p/14611512

相关文章

【MySQL | 第九篇】重新认识MySQL锁

文章目录 9.重新认识MySQL锁9.1MySQL锁概述9.2锁分类9.2.1锁的粒度9.2.2锁的区间9.2.3锁的性能9.2.4锁的级别 9.3拓展:意向锁9.3.1意向锁概述9.3.2意向锁分类9.3.3意向锁作用(1)意向锁的兼容互斥性(2)例子1&#xff08…

【Linux】gcc/g++的使用

🎉博主首页: 有趣的中国人 🎉专栏首页: Linux 🎉其它专栏: C初阶 | C进阶 | 初阶数据结构 小伙伴们大家好,本片文章将会讲解Linux中gcc/g使用的相关内容。 如果看到最后您觉得这篇文章写得不错…

【iOS】-- 内存五大分区

【iOS】-- 内存五大分区 内存五大分区1.栈区优点: 2.堆区优点: 3.全局区4.常量区5.代码区 验证static、extern、const关键字比较1.static关键字static关键字的作用:全局静态变量局部静态变量 2.extern关键字对内的全局变量对外的全局变量 3.c…

俄罗斯国际消费类电子电器展ICEE:人潮如织,盛况空前

近日,备受全球瞩目的俄罗斯国际消费类电子电器展ICEE在莫斯科盛大落幕。本次展会为期四天,真的攒足了眼球,不仅俄罗斯这边的很多媒体和自媒体有报道,展会第一天,很多参展商通过短视频平台将展会的盛况传到了国内&#…

近似消息传递算法(AMP)单测量模型(SMV)

1、算法解决问题 很多人致力于解决SLM模型的求逆问题,即知道观测值和测量矩阵(字典之类的),要求未知变量的值。SLM又叫做标准线性模型,后续又在此基础上进行升级变为广义线性模型。即SLM是yAxe,这里是线性…

给网站网页PHP页面设置密码访问代码

将MkEncrypt.php文件上传至你网站根目录下或者同级目录下。 MkEncrypt.php里面添加代码,再将调用代码添加到你需要加密的页进行调用 MkEncrypt(‘123456’);括号里面123456修改成你需要设置的密码。 密码正确才能进去页面,进入后会存下cookies值&…

22_Scala集合Seq

文章目录 Seq序列1.构建集合2.List集合元素拼接&&集合拼接3.可变Seq&&List3.1 ListBuffer创建3.2 增删改查3.3 相互转化 Appendix1.Scala起别名2.Seq底层3.关于运算符操作: :4.空集合的表示 Seq序列 –Seq表示有序,数据可重复的集合 1.构建集合 …

ReactFlow的ReactFlow实例事件传参undefined处理状态切换

1.问题 ReactFlow的ReactFlow实例有些事件我们在不同的状态下并不需要,而且有时候传参会出现其它渲染效果,比如只读状态下我们不想要拖拉拽onEdgesChange连线重连或删除的功能。 2.思路 事件名称类型默认值onEdgesChange(changes: EdgeChange[]) >…

Java面试重点之反射机制

一、 反射是什么? 允许程序在运行时查询和操作对象的类型信息。通过反射,程序能够在运行时获取对象的类定义信息,如类的名称、方法、字段、注解等,并且可以动态地调用对象的方法或访问其字段,而无需在编译时具体知道对…

【SQL每日一练】统计复旦用户8月练题情况

文章目录 题目一、分析二、题解1.使用case...when..then2.使用if 题目 现在运营想要了解复旦大学的每个用户在8月份练习的总题目数和回答正确的题目数情况,请取出相应明细数据,对于在8月份没有练习过的用户,答题数结果返回0. 示例代码&am…

Java17 --- SpringCloud之Gateway

目录 一、Gateway网关创建 1.1、创建微服务子工程9527及配置和依赖 1.1.1、pom依赖 1.1.2、yml配置 1.1.3、主启动类并测试入驻consul 二、实现路由映射 2.1、服务8001新增测试代码 2.2、修改9527服务yml配置文件 2.3、远程调用接口加gateway 2.3.1、新增80服务测…

企业车辆管理系统参考论文(论文 + 源码)

【免费】关于企业车辆管理系统.zip资源-CSDN文库https://download.csdn.net/download/JW_559/89282550 企业车辆管理系统 摘 要 随着经济的日益增长,车辆作为最重要的交通工具,在企事业单位中得以普及,单位的车辆数目已经远远不止简单的几辆,与此同时就产生了车辆资源的合理…

JavaScript异步编程——05-回调函数

我们在前面的文章《JavaScript 基础:异步编程/单线程和异步》中讲过,Javascript 是⼀⻔单线程语⾔。早期我们解决异步场景时,⼤部分情况都是通过回调函数来进⾏。 (如果你还不了解单线程和异步的概念,可以先去回顾上一…

OpenVX技术图例(二)

OpenVX技术图例(二) 参考文献链接 https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-jacinto7/latest/exports/docs/tiovx/docs/user_guide/index.html人工智能芯片与自动驾驶

贪吃蛇小游戏(c语言)

1.效果展示 屏幕录制 2024-04-28 205129 2.基本功能 • 贪吃蛇地图绘制 • 蛇吃食物的功能 (上、下、左、右方键控制蛇的动作) • 蛇撞墙死亡 • 蛇撞自身死亡 • 计算得分 • 蛇身加速、减速 • 暂停游戏 3.技术要点 C语言函数、枚举、结构…

(7)ram ip使用

一、ram相关介绍 本实验使用一个控制模块对ram ip进行控制(本质上是三个计数器) 二、ip使用 在界面中选择IP catalog,搜索block,选择底下这个,双击即可生成ram的ip下面进行一些ram资源的配置 配置好后点击ok,生成ip,可以在这里看到已经生成好了: 这里点开这个.veo文件,…

深入了解 NumPy:深度学习中的数学运算利器

文章目录 1. 导入NumPy2. 创建NumPy数组3. 数组的算术运算4. N维数组4.1 创建和操作多维数组4.2 高维数组 5. NumPy的广播功能5.1 基本广播示例5.2 更复杂的广播示例 6. 访问数组元素6.1 基于索引的访问6.2 遍历数组6.3 基于条件的访问6.4 高级索引6.5 性能考虑 在深度学习和数…

Crowd counting 系列NO.2—MCNN

声明:博客是用latex写的,所以直接用图片来展示吧,效果是一样的。下载资源网上都很容易搜到,如需下载资源,请留言。

韩顺平0基础学Java——第5天

p72——p86 今天同学跟我说别学java,真的吗?唉,先把这视频干完吧。 逻辑运算符练习 x6,y6 x6,y5 x11,y6 x11,y5 z48 错了&a…

超级大转盘!(html+less+js)(结尾附代码)

超级大转盘!(结尾附代码) 网上看到有人用转盘抽奖,怀疑是不是有问题,为什么每次都中不了,能不能整个转盘自己想中啥中啥,查阅了网上写得好的文章,果然实现了只中谢谢参与&#xff0…