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

[Git] git stash命令详解

 前言


目录

git stash -m

git stash list

git stash pop

git stash apply index

git stash drop index

git stash clear

特定范围文件储存

git stash [-S|--staged]

git stash [-u|--include-untracked]

git stash [-a|--all]


将当前未提交的修改(即工作区和暂存区的修改)先暂时储藏起来,保存到一个栈中,并恢复工作目录到干净的 HEAD 状态。这样可以在不提交当前更改的情况下,切换到其他分支或进行其他操作。

git stash -m

将当前未提交的修改(即工作区和暂存区的修改)先暂时储藏起来

在工作区中新建文件3.txt,查看状态,此时的3.txt文件在工作区,还没有放到暂存区

将3.txt放到暂存区

使用命令储存3.txt  -m后面是备注信息

储存后,工作区就没有该文件了

git stash list

查看储存

git stash pop

弹出最后一次储存

查看储存,此时为空

将3.txt存入

在工作区修改3.txt后,再次储存

查看此时储存的文件,有两个

WIP意为work in progess, index用于后面取出所对应储存的修改

stash@{index}: WIP on [分支名]: [最近一次的commitID] [最近一次的提交信息]

git stash apply index

取出指定index的储藏的修改到工作区中 

取出index为0的文件

查看储存列表,仍然存在

工作区中出现文件3.txt

再尝试取出index为1的文件,报错,因为刚才已经取出了一个文件

git stash drop index

将指定index的储存从储存记录列表中删除 

查看储存列表,看到此时文件的index由1变成了0

git stash clear

储藏记录多的话,一个个删除太麻烦,可以批量删除

将文件放入暂存区

再次存入

取出1

在工作区修改文件,然后放入暂存区

储存并查看储存列表

删除并查看,此时的储存列表已经为空

特定范围文件储存

新建文件4、5、6

将4放入暂存区,6提交到版本库,然后再工作区修改文件6的内容,查看状态,现在的三个文件分别对应三种状态

4:新增加到暂存区的文件

5:新建的文件,没有放到暂存区

6:已经提交到版本库的文件,但在工作区进行了修改

git stash [-S|--staged]

只对暂存区文件进行储藏

看到工作区中的4.txt文件不在了,4.txt已经储存了

git stash [-u|--include-untracked]

对未追踪文件也进行储藏

新建文件7,放到暂存区

执行命令

看到工作区的5、7文件都不在了

 弹出

工作区恢复

git stash [-a|--all]

对所有文件进行储藏

此时状态

执行指令

此时的工作区,并且之前对文件6的修改恢复了

弹出

工作区文件恢复,且对文件6的修改也恢复了


http://www.kler.cn/a/349149.html

相关文章:

  • 雪花啤酒:以AI数智化重新书写啤酒产业
  • 10.10学习
  • arthas常用命令(五)--heapdump 、jvm
  • 详解tar.gz, tar.xz, tar, gz后缀文件的区别
  • Machine Learning Specialization 学习笔记(5)
  • 2024汽车制造业数字化转型的意义
  • 搜维尔科技:Haption Virtuose Desktop 6D 力反馈设备演示手套箱环境中的远程操作
  • 大数据ETL数据提取转换和加载处理
  • 房屋租赁系统(论文+源码)-kaic
  • vue中opanlayers使用overlay插入div到地图
  • live2d 实时虚拟数字人形象页面显示,对接大模型
  • LeetCode讲解篇之2266. 统计打字方案数
  • Python之openpyxl读写 Excel 文件教程
  • 面试-2024年7月16号
  • springboot根据id编辑用户账号信息
  • Zsh 安装与配置
  • 电子取证新视角:USB键盘流量提取密码方法研究与实现
  • Python脚本爬取目标网站上的所有链接
  • 低代码工单管理app评测,功能与效率解析
  • LangChain使用Prompt02