git stash
来源:互联网 发布:photoshop mac安装包 编辑:程序博客网 时间:2024/06/10 09:18
git stash
备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。
git stash pop
从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复。
git stash list
显示Git栈内的所有备份,可以利用这个列表来决定从那个地方恢复。
git stash clear
清空Git栈。此时使用gitg等图形化工具会发现,原来stash的哪些节点都消失了。
Git Stash的详细解释,适用场合:
使用git的时候,我们往往使用branch解决任务切换问题,例如,我们往往会建一个自己的分支去修改和调试代码, 如果别人或者自己发现原有的分支上有个不得不修改的bug,我们往往会把完成一半的代码 commit提交到本地仓库,然后切换分支去修改bug,改好之后再切换回来。这样的话往往log上会有大量不必要的记录。其实如果我们不想提交完成一半或者不完善的代码,但是却不得不去修改一个紧急Bug,那么使用’git stash’就可以将你当前未提交到本地(和服务器)的代码推入到Git的栈中,这时候你的工作区间和上一次提交的内容是完全一样的,所以你可以放心的修 Bug,等到修完Bug,提交到服务器上后,再使用’git stash apply’将以前一半的工作应用回来。也许有的人会说,那我可不可以多次将未提交的代码压入到栈中?答案是可以的。当你多次使用’git stash’命令后,你的栈里将充满了未提交的代码,这时候你会对将哪个版本应用回来有些困惑,’git stash list’命令可以将当前的Git栈信息打印出来,你只需要将找到对应的版本号,例如使用’git stash apply stash@{1}’就可以将你指定版本号为stash@{1}的工作取出来,当你将所有的栈都应用回来的时候,可以使用’git stash clear’来将栈清空。
在这里顺便提下git format-patch -n , n是具体某个数字, 例如 ‘git format-patch -1’ 这时便会根据log生成一个对应的补丁,如果 ‘git format-patch -2’ 那么便会生成2个补丁,当然前提是你的log上有至少有两个记录。
看过上面的信息,就可以知道使用场合了:当前工作区内容已被修改,但是并未完成。这时Boss来了,说前面的分支上面有一个Bug,需要立即修复。可是我又不想提交目前的修改,因为修改没有完成。但是,不提交的话,又没有办法checkout到前面的分支。此时用Git Stash就相当于备份工作区了。然后在Checkout过去修改,就能够达到保存当前工作区,并及时恢复的作用。
- git stash
- git stash
- git stash
- git stash
- git stash
- git stash
- Git Stash
- git stash
- git stash
- git stash
- git stash
- git stash
- git-stash
- git stash
- git stash
- git stash
- git stash
- Git - stash
- sass语法总结
- 微信浏览器,无法进行进入页面视频自动播放
- Ubuntu16.04下安装OpenCV3.2.0
- 在FreeMarker框架中使用Shiro的Tag标签
- xml基础
- git stash
- 欢迎使用CSDN-markdown编辑器
- java算法-兔子对数问题
- 自定义仿 ios 加载框和自定义 Toast 带动画效果
- Ubuntu环境下Tomcat上添加域名,遇到80端口无法启动问题
- android 流式布局(热门标签)
- 适配问题:两数相除得小数点后两位
- maven项目jdk设置
- python开发