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


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

  • 推荐:「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.mzph.cn/news/833936.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

掌控网络流量,优化网络性能 - AnaTraf网络流量分析仪登场

在当今日新月异的网络环境中,网络流量监控和性能诊断已成为企业IT部门不可或缺的重要工作。只有充分了解网络流量状况,才能有效优化网络性能,提高业务运营效率。针对这一需求,全新推出的AnaTraf网络流量分析仪应运而生,为企业提供全面的网络监控和性能诊断解决方案。 快速定位…

嵌入式Linux的QT项目CMake工程模板分享及使用指南

在嵌入式linux开发板上跑QT应用,不同于PC上的开发过程。最大的区别就是需要交叉编译,才能在板子上运行。 这里总结下嵌入式linux环境下使用CMake,嵌入式QT的CMake工程模板配置及如何使用,分享给有需要的小伙伴,有用到的…

JS 实现继承的几种方式

现在有parent、child两个函数,child函数的实例想要访问parent函数的属性和方法(child想要继承parent)。 1、原型链继承 缺点:有引用的值共享的问题 即当parent某个属性是引用数据类型的时候,child实例如果修改了这个…

SK Hynix 探索超低温技术,开启400层以上3D NAND制造新时代

随着存储技术的飞速发展,SK Hynix作为韩国存储巨头,正以前沿的制造技术引领行业变革。据韩国媒体TheElec独家报道,SK Hynix正积极研究在超低温条件下生产3D NAND闪存的可能性,此举有望助力其下一代产品突破400层的技术瓶颈&#x…

在做题中学习(50):搜索插入位置

35. 搜索插入位置 - 力扣(LeetCode) 解法:二分查找 思路:题目是有序的,时间复杂度O(logN),二分没跑了,题目说如果找不到target,返回它应该被插入位置的下标,所以可以分析一下示例2&…

设计模式一

单例模式(Singleton Pattern)是一种常用的软件设计模式,旨在确保一个类只有一个实例,并提供一个全局访问点。单例模式常用于控制资源密集型对象的创建,如数据库连接池、线程池等,以避免资源浪费。 单例模式…

后教培时代的新东方,正在找寻更大的教育驱动力?

近段时间,K12教育主要上市公司的阶段性业绩皆已出炉。从具体数据来看,随着时间推移,教培机构的转型之路已愈走愈顺。 财报显示,2023年12月1日-2024年2月29日,好未来实现营收4.3亿美元,同比增长59.7%&#…

C语言什么是“野指针”?

一、问题 “野指针”是⼀个⽐较陌⽣的术语,那么它到底是什么呢? 二、解答 当程序⾥声明了⼀个指针⽽又没有给这个指针赋值,使其指向⼀个地址时,这样的指针就称为“野指针”。 “野指针”会随意地指向⼀个地址。当对这个指针进⾏操…

Debian操作系统简史

一,起源和初衷 Debian项目始于1993年,由Ian Murdock发起,他当时是普渡大学的一名学生。Debian的名字来源于Ian Murdock和他的妻子Debra的组合。Debian的核心理念是创建一个完全自由的操作系统,它遵循严格的自由软件指导原则。 二…

Parallels Desktop 19 for Mac v19.3.0.54924中文破解版

Parallels Desktop 19 for Mac v19.3.0.54924中文破解版是一款强大的虚拟机软件,支持多操作系统,提供卓越的虚拟化技术,确保流畅稳定的运行。新增特色功能如共享打印、TouchID集成等,提供便捷高效的虚拟机体验。界面美观现代&…

认识大模型提示词

一、写作助理 💥最常使用的 prompt,用于优化文本的语法、清晰度和简洁度,提高可读性。 输入:作为一名写作改进助理,你的任务是改进所提供文本的拼写、语法、清晰、简洁和整体可读性,同时分解长句&#xff…

Google Earth Engine谷歌地球引擎计算遥感影像在每个8天间隔内的多年平均值

本文介绍在谷歌地球引擎(Google Earth Engine,GEE)中,求取多年时间中,遥感影像在每1个8天时间间隔内的多年平均值的方法。 本文是谷歌地球引擎(Google Earth Engine,GEE)系列教学文章…

[机器学习-01]一文了解|机器学习简介、工具选择和Python包基础应用

目录 前言 正文 01-机器学习简介 (1)诞生过程 (2)人工智能、机器学习和深度学习之间的关系 (3)机器学习核心 02-机器学习工具 (1)Anaconda简介 (2)Jupyte…

【千帆平台】使用AppBuilder零代码创建应用,Excel表格数据转为Markdown格式文本

欢迎来到《小5讲堂》 这是《千帆平台》系列文章,每篇文章将以博主理解的角度展开讲解。 温馨提示:博主能力有限,理解水平有限,若有不对之处望指正! 目录 前言创建应用应用名称应用描述应用头像角色指令组件能力开场白推…

springcloud报错:Failed to start bean‘webServerStartStop‘

如果你正在使用nacos进行服务注册,然后报一下错误: 那就说明的nacos没有打开,所以找到你的下载nacos的文件夹 好了,错误完美解决~

Leetcode—387. 字符串中的第一个唯一字符【简单】

2024每日刷题&#xff08;127&#xff09; Leetcode—387. 字符串中的第一个唯一字符 实现代码 class Solution { public:int firstUniqChar(string s) {int count[26] {0};for(char c: s) {count[c - a];}for(int i 0; i < s.length(); i) {if(count[s[i] - a] 1) {re…

射频无源器件之耦合器

一. 耦合器的作用 在射频电路中,射频耦合器将一路微波功率按比例分成几路,用于检测或监测信号,如功率测量和波检测,还可改变信号的幅度、相位等特性,以满足不同的通信需求。根据输入与耦合端的功率差,常被分为5dB、6dB、10dB等耦合器。射频耦合器的类型主要包括定向耦合…

配置端口隔离,实现同一vlan中主机不互通,再配置三层交换机vlanif接口实现二层隔离三层互通。

连接同一交换机的主机可以通过交换机端口配置不同的vlan进行隔离。但是如果数量过多会造成vlan压力&#xff08;如企业中的用户超过4094&#xff09;。 port-isolate mode l2 实现二层隔离&#xff1a; 通过端口隔离的方式在二层实现隔离&#xff1a;如把端口1和端口2都放进同…

TF-IDF解释

TF-IDF 表征了某个词对于一段文本的重要性和独特性 假设我们有以下三段简短的文本数据: 文本1: 这个苹果很新鲜很甜 文本2: 我买了一个苹果非常喜欢 文本3: 这个苹果皮非常光滑 首先,我们构建这个小文本集合的词典(vocabulary),去掉一些常见的无意义词语(如"的"、&q…

OSPF Stub区域

原理概述 OSPF 协议定义了多种区域&#xff08; Area &#xff09;类型&#xff0c;其中比较常见的有 Stub 区域和 Totally Stub 区域。区域的类型决定了在这个区域当中所存在的 LSA 的类型。 Stub 区域不允许 Type-4和 Type-5 LSA 进入&#xff0c;该区域会通过 Type-3 LSA…