Git stash 的用法,将暂存区的内容缓存并移除,解决切换分支前的内容缓存问题
git stash
- 如果当前分支还有任务没有做完,也不想提交,但此时需要切换或者创建其它分支,就可以使用stash将当前分支的所有修改(包括暂存区)先储藏起来;然后就可以切换到其它分支
- 在其它分支工作完成之后,首先切换回原来的分支,然后使用
git stash list
命令查看 - 可以使用
git stash apply <stash number>
恢复之前储藏的工作现场,再使用git stash drop <stash number>
删除掉储藏的内容 - 也可以直接用
git stash pop
恢复并删除内容
1.保存
$ git stash
解释:会把所有未提交的修改(包括暂存的和非暂存的)都保存起来
$ git stash save "messeag"
解释:会把所有未提交的修改(包括暂存的和非暂存的)都保存起来,并增加说明
$ git stash save -u "messeag"
解释:会把所有未提交的修改(包括1.暂存的;2.非暂存的;3.新加入的代码文件:untracked files)都保存起来,并增加说明
$ git stash save -a "messeag" 不建议用
解释:会把所有未提交的修改(包括1.暂存的;2.非暂存的;3.新加入的代码文;4.其他隐藏文件)都保存起来,并增加说明;不建议用
2.重新应用缓存的stash
$ git stash pop
解释:这个指令将缓存堆栈中的第一个stash删除,并将对应修改应用到当前的工作目录下
$ git stash apply
解释:将缓存堆栈中的stash多次应用到工作目录中,但并不删除stash拷贝
3.查看stash
$ git stash list
解释:在使用git stash apply命令时可以通过名字指定使用哪个stash,默认使用最近的stash(即stash@{0})。
4.移除
$ git stash drop stash@{0}
解释:删除指定的stash
$ git stash clear
解释:删除所有缓存的stash
5 查看指定stash的diff
$ git stash show
解释:查看指定stash的diff,后面可以跟着stash名字
$ git stash show -p
解释:在该命令后面添加-p或--patch可以查看特定stash的全部diff
6 stash指定的文件
1.多个文件
git stash push <file1> <file2> <file3> [file4 ...]
2.单个文件
git stash push -m "message" file_path
Git stash 的用法,将暂存区的内容缓存并移除,解决切换分支前的内容缓存问题相关推荐
- Git三大特色之Stage(暂存区)
这是开篇 有人说,暂存区是 Git 最精彩的设计,同时也是最难理解的部分,两者我都感觉不太明显,但当我想写关于暂存区的理解后,发现的确不怎么好讲,这个玩意,有点只可意会的感觉,用 Git 用熟练了,很 ...
- Git中的工作区和暂存区
Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 0. 相关专业名词 staged changes:已更改的东西 unstaged changes:未更改的东西 stage 暂存区 ...
- Git stash 指令总结:暂存和恢复
应用场景: 刚刚正在dev分支上开发某个项目,这时项目中出现一个严重bug,需要紧急修复,但是正在开发的内容只是完成一半,还不想提交,这时可以用git stash命令将修改的内容保存至堆栈区,然后顺利 ...
- git中的工作区,暂存区,版本库
git status 用于查看哪些文件被暂存了 红色:工作区与版本库之间对比 ,说明没有被暂存 git add . (工作区的内容添加到暂存区) 黄绿色:暂存区和版本库,说明被暂存
- Git——三大分区【工作区 / 暂存区 / 版本区】
前言:Git作为一个版本管理工具,最核心组成思想是它的三个分区:工作区.暂存区和工作区. 1. 工作区 Git的工作区也就是我们平时编辑代码的目录文件夹. 2. 暂存区 暂存区就是一个暂时放置 ...
- git 的详细使用 操作暂存区
git 大概流程: 1.配置 1.1 配置本机全局的用户名(username)和邮箱(useremail ) 配置 >>>> 查看 一般就是新安装git才需要配置一次 git ...
- git中使已经加入暂存区的文件不再受版本控制
有的时候我们会有这样的需求,自己新建了一个本地仓库,并且执行了 "git add ." 命令,此时所有的文件都加入版本控制,但是有些文件是我们不需要进行版本控制的(比如说VS工具生 ...
- Git - stash(暂存区) 用法
使用场景 功能开发一半,改了个BUG需要提交,此时就需要把开发功能的改动代码暂存起来,将BUG修改内容进行提交并推送,推送后再恢复原有改动 执行流程 先git commit要提交的内容 将剩下内容通过 ...
- Git使用汇总之工作区、暂存区、版本库
前言 初次接触git的时候最让人迷惑的无非是这三者的概念和他们之间的关系,搞懂这三个概念和他们之间的关系,可以说你对git了解已经三分熟了. 下面这个图展示了工作区.版本库中的暂存区和版本库之间的关系 ...
最新文章
- python使用imbalanced-learn的AllKNN方法进行下采样处理数据不平衡问题
- 软件测试培训 高级测试/测试开发基本技能列表
- urlencode和quote的用法
- [裴礼文数学分析中的典型问题与方法习题参考解答]4.3.13
- linux+proc+原理,Linux内核中的Proc文件系统(一)
- python绘制三维曲线图_Python基于matplotlib实现绘制三维图形功能示例
- adb logcat介绍
- 求合体电脑版_网红界宋祖儿找年轻版言承旭当男友,一张合照收割大量cp粉?!...
- vue组件独享守卫钩子函数参数详解(beforeRouteEnter、beforeRouteUpdate、beforeRouteLeave)...
- 编程之美:从无头单链表中删除节点,讨论
- 用百宝云在线表单制作一个简单的投票系统
- f1c200s核心板_F1C200s NS 2009 驱动
- 工业3D互联网可视化三维数字化智能工厂管理系统
- 服务器直接ip登录显示令牌错误,SSL 配置动态令牌认证,令牌同步失败提示获取认证服务器配置失败或本地IP与认证服务器IP地址不匹配...
- tfs java_Java SDK for TFS
- 程序员怒怼产品经理最新表情包,叫我改Bug这辈子是不可能的
- python打开autocad
- 互联网服务器信息检索,网络信息检索的一般方法
- 怎么把html转换成字符串,javascript – 如何将html和值输出转换为字符串
- 第九天 03-破解linux密码