git stash 正确用法

目录

一、背景

二、使用

[2.1 使用之前,先简单了解下 git stash 干了什么:](#2.1 使用之前,先简单了解下 git stash 干了什么:)

[2.2 git stash 相关命令](#2.2 git stash 相关命令)

[2.3 使用流程](#2.3 使用流程)

[1. 执行 `git stash`](#1. 执行 git stash)

[2. 查看刚才保存的工作进度 `git stash list`](#2. 查看刚才保存的工作进度 git stash list)

[3. 这时候在看分支已经是干净无修改的(改动都有暂存到 stash)](#3. 这时候在看分支已经是干净无修改的(改动都有暂存到 stash))

[4. 现在就可以正常切换到目标分支,进行相应操作](#4. 现在就可以正常切换到目标分支,进行相应操作)

[5. 其他分支处理完成,再切回来使用刚才的 stash, 还是先查看 暂缓列表](#5. 其他分支处理完成,再切回来使用刚才的 stash, 还是先查看 暂缓列表)

[6. 选择使用暂缓 `git stash apply n`](#6. 选择使用暂缓 git stash apply n)


一、背景

我们经常会遇到这样的情况:

在一个分支开发新功能,还没开发完毕,做到一半时有反馈紧急bug需要处理,但是新功能开发了一半又不想提交。

这时就可以使用 git stash

二、使用

2.1 使用之前,先简单了解下 git stash 干了什么:

它会保存当前工作进度,会把暂存区和工作区的改动保存到一个未完结变更的堆栈中;执行完这个命令后,在运行 git status 命令,就会发现当前是一个干净的工作区,没有任何改动。

  1. git stash 是本地的,不会上传到服务器上;
  2. 可以使用 git stash save 'message...' 添加一些注释。

2.2 git stash 相关命令

2.3 使用流程

一般先使用 git stash list 查看有没有已经 stash 的记录,避免和自己的混淆,到时候使用时不知道是哪条记录

查看有无用的 list,可以先使用 git stash drop n 删除,直到 list 为空

1. 执行 `git stash`

默认是不带注释的,想要后面看的更清楚该 stash 是存储的什么,可以如下操作:

执行 `git stash save "commend"`

2. 查看刚才保存的工作进度 `git stash list`

保存注释的长这样:

可以看到 stash@{0} 是刚才保存的

3. 这时候在看分支已经是干净无修改的(改动都有暂存到 stash)

4. 现在就可以正常切换到目标分支,进行相应操作

5. 其他分支处理完成,再切回来使用刚才的 stash, 还是先查看 暂缓列表

6. 选择使用暂缓 `git stash apply n`

注:n 是序号,如下图红色箭头指示

相关推荐
sbjdhjd11 小时前
从零搭建企业级 CI/CD(下):Jenkins+GitLab+Harbor 全链路实战指南
git·servlet·ci/cd·云原生·云计算·gitlab·jenkins
码云数智-大飞11 小时前
Go Channel 详解:并发通信的正确姿势
前端·数据库·git
OsDepK20 小时前
OSMDE手机AI编程,一键Git
git·ai编程
用什么都重名1 天前
Git分支合并与远程服务器同步实战:保留关键配置文件
运维·服务器·git
得要找到一束光1 天前
git详细命令
git·github
2601_961875241 天前
花生十三公考课程|网课|视频
数据库·windows·git·svn·eclipse·github
EleganceJiaBao1 天前
【Git】Git reset 完整指南:真正理解 HEAD、暂存区与工作区
git·github·reset
我最爱吃鱼香茄子1 天前
【保姆级】Git配置用户名和邮箱(全局/局部)解决提交记录不识别、贡献图不亮问题
git·gitee·github·小白教程·git配置·程序员开发工具
weixin_571667411 天前
git fork 并建立自己的dev分支 保持与源仓库的联系
git
master3361 天前
git仓库通过脚本完成多个远程仓库同步
大数据·git·elasticsearch