Git基础 对Git Stash的理解

使用场景

1.我们在本地分支开发时发现该分支有紧急bug需要修复,而在该分支新修改的内容又不想提交,有一种做法是将本地暂存区的内容形成一个新的commit,然后切换分支reset --hard到之前的分支,改完之后再切回来,这样的话会有一切不必要的log信息。如果我们不想提交完成一半或者不想提交的代码但又不得不去修改一个需要紧急修复的bug的时候,那么使用git stash就可以将你当前未提交到本地的代码推入到git的栈中,这时候你工作区间和上一次提交的内容完全一样,等修复完bug提交至服务器之后再使用git stash apply将之前一半的代码找回来。

2.如果你是多分支开发的话,当你正在进行的某一部分的工作没有完成,而你此时要切到另一个分支进行一些工作,可以使用stash保存起来,为了后继可以随时继续使用

用法

1.git stash save "test-stash"

将所有未提交过的修改都保存起来,用于后继回复当前的工作目录,当前目录会干净

2.重新应用缓存的stash

git stash pop,使用栈中第一个stash内容,并且删除

git stash apply,使用但是不删除

3.查看现有的stash

git stash list

4.移除stash

git stash drop stash@{2},移除某个stash

git stash clear,移除所有stash

5.查看stash的diff

git stash show,查看stash的diff

git stash show stash@{0} -p,查看全部diff

6.git stash branch stash-branch

创建一个stash分支,当你stash之后,在本地分支又接着进行开发,而stash之后的内容和stash的内容有冲突

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Git常用语法 [TOC] Git简介 描述 ​ Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,...
    君惜丶阅读 9,230评论 0 13
  • 1.git的安装 1.1 在Windows上安装Git msysgit是Windows版的Git,从https:/...
    落魂灬阅读 14,347评论 4 54
  • git 使用笔记 git原理: 文件(blob)对象,树(tree)对象,提交(commit)对象 tree对象 ...
    神刀阅读 9,170评论 0 10
  • (预警:因为详细,所以行文有些长,新手边看边操作效果出乎你的预料) 一:Git是什么? Git是目前世界上最先进的...
    axiaochao阅读 5,945评论 1 8
  • Add & Commit git init 初始化一个 Git 仓库(repository),即把当前所在目录变成...
    冬絮阅读 10,425评论 0 9

友情链接更多精彩内容