git stash 功能简介
在编码过程中,总会遇到一些时候,你在某一个分支上写了代码,这个时候你需要去其他分支或者原始版本上去做一些功能或者增强,但是你又不想将新加的代码提交或者回滚(毕竟自己辛苦写的或者还没有经过测试的功能等等原因),这个时候stash就很有用处了。
功能介绍
将未提交的文件保存到Git栈中
git stash
但是这个指令的提交信息时上次commit的信息,如果stash的次数较多或者间隔时间太长,完全不知道没有修改了啥,所以可以使用下面的指令
git stash -m "暂存的信息"
查看栈中保存的列表
git stash list
显示栈中一条记录信息
git stash show stash@{0}
移除栈中其中一条记录
git stash drop stash@{0}
从Git栈中检出一条记录,并将它从栈中移除
git stash pop stash@{0} (如果stash@{0}不添加就是最新的一条)
从Git栈中检出一条记录,但不从栈中移除
git stash apply stash@{0}
清空栈里的所有记录
git stash clear
把当前栈中某一次记录检出并创建一个新分支
git stash branch new_banch stash@{0}
下面的指令纯粹介绍
- 为当前修改或删除的文件创建一个自定义的栈并返回一个ID,此时并未真正存储到栈里
git stash create
- 将 create 方法里返回的ID放到 store 后面,此时在栈里真正创建了一个记录,但当前修改或删除的文件并未从工作区移除
git stash store xxxxxx
$ git stash create
09eb9a97ad632d0825be1ece361936d1d0bdb5c7
$ git stash store 09eb9a97ad632d0825be1ece361936d1d0bdb5c7
$ git stash list
stash@{0}: Created via "git stash store".
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。