Git命令之stash

在开发过程中,不可避免的会产生bug,有时候我们在处理迭代开发的过程中(此处假使迭代开发在master分支进行),需要紧急修复生产环境的bug,此时,

我们可能希望新建一个bug分支专门用于修复bug,但是,当前正在master分支修改的工作还没有提交,因只修改了一半,也不能提交

此时,我们就可以使用git提供的stash功能,把当前工作现场“储藏”起来,等以后恢复现场后继续工作

$ git stash

此时,再用git status查看工作区,会发现工作区是干净的,之前的修改已经不见了(被隐藏了),因此可以放心的创建bug分支

修复完成后,再切换到master分支,并完成合并。

此时,我们想着继续我们的迭代开发,但工作区是干净的,之前我们的修改怎么恢复呢?

可以用git stash list 命令查看

$ git stash list

我们会发现,我们修改的内容还是存在的,只是被git隐藏到某个地方了,那么怎么真正恢复呢?

有两种方式,一种是用git stash apply恢复,但是恢复后,stash内容并不删除,需要用 git stash drop 来删除;

另一种方式是用git stash pop,恢复的同时把stash内容也删了,个人建议这种方式:

$ git stash pop

此时,再用git stash list 查看,就看不到任何stash内容了

$ git stash list

当有多次stash 时,恢复时,先用git stash list查看,然后恢复指定的stash,用如下命令:

$ git stash apply [email protected]{0}

最后,给大家推荐下廖雪峰的Git教程,地址:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000,有时间的同学可以系统的学习下

时间: 2024-09-29 23:46:41

Git命令之stash的相关文章

常用 Git 命令清单

我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一.新建代码库 # 在当前目录新建一个Git代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project-nam

git命令行使用

1. git命令行配置 1)安装完git客户端之后,在任意目录右键鼠标,选择Git GUI Here 2)在打开的窗口中依次选择Help->> Show SSH Key 2)如果弹出的窗口中中间部分没有key,可以点击 Generate Key 按钮,生成key,然后将生成的key拷贝一下,添加到gitlab中即可. 2. 命令使用 1)下载代码 在存放代码的目录中,右键鼠标,选择 Git Bash Here,然后会打开终端窗口 输入: git init   创建git配置目录 输入下面命令,

常用 Git 命令清单 转

我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一.新建代码库 # 在当前目录新建一个Git代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project-nam

常用Git命令汇总

常用Git命令汇总 跟着R哥来到了新公司(一个从硬件向互联网转型中的公司),新公司以前的代码基本是使用SVN做版本控制,甚至有些代码没有做版本控制,所以R哥叫HG做了一次Git分享,准备把公司所有的代码用Git作版本控制.平时自己虽然天天使用Git,但是总感觉知识有些零散,于是汇总了一些常用的Git命令. 常用配置 --system #系统级别 --global #用户全局 --local #单独一个项目 git config --global user.name "xxxx" #用户

git命令总结

基础知识 这里我就不废话什么是Git了,程序猿用的东西,不是程序猿估计也不会想用.我每天使用 Git ,但是很多命令记不住.一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. image 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 新建代码库 # 在当前目录新建一个Git代码库 $ git init #

常用git命令

##GIT ###什么是gut - 是一个源代码管理工具- 在一个项目中,凡是由开发人员编写的都是源代码- 源代码有必要被管理起来吗- 让源代码可以被追溯,主要记录每次变了什么,谁主导这次变化- 人为的维护比较麻烦- GIT是Linux之父当年为了维护管理Linux源代码写的一个工具- GIT之前很多使用的svn vss tfs hs - https://guides.github.com/ ### 安装GIT - git命令行工具- 基于git命令行的一个客户端软件(提供一个界面去管理源代码)

git 命令总结

1. 配置 git config --global user.name "your name" git config --global user.email  [email protected] git config --global color.ui true git config --global core.editor vi git config --global alias.lol "log --graph --all"    设置alias,这样lol就是

git 命令整理

记录一些git 命令,以便自己以后查阅 基本命令   1.git add (保存工作区的变动到暂存区) git add . 和git add -A把整个工作区添加到暂存区 2.git commit (保存暂存区的变动到历史) 3.git status (查看工作和暂存区的不同) 4.git rm (删除暂存区和工作区里文件, (1)注意区分rm 和 git rm 间的区别git rm 删除过的文件,执行 git commit -m "git rm" 提交时, 会自动将删除该文件的操作提

Git 命令速查表

1.常用的Git命令 命令 简要说明 git add 添加至暂存区 git add–interactive 交互式添加 git apply 应用补丁 git am 应用邮件格式补丁 git annotate 同义词,等同于 git blame git archive 文件归档打包 git bisect 二分查找 git blame 文件逐行追溯 git branch 分支管理 git cat-file 版本库对象研究工具 git checkout 检出到工作区.切换或创建分支 git cherr