git学习(5)---git stash
# 先将本地修改存储起来
git stash
结果:
其中stash@{0} 就是刚才保存的标记。
2、git pull
---- do some work
3、git stash pop stash@{0}
将当前stash中的内容弹出,并应用到当前分支对应的工作目录上。该命令将堆栈中最近保存的内容删除(栈是先进后出)
2、git stash save : 作用同git stash, 区别是可以加一些注释。
git stash的效果:
stash@{0}: WIP on master: b2f489c second
git stash save “test1”的效果:
stash@{0}: On master: test1
3、git stash list:查看当前stash的内容
4、git stash pop :将当前stash中的内容弹出,并应用到当前分支对应的工作目录上。该命令将堆栈中最近保存的内容删除(栈是先进后出)
5、 git stash apply:将堆栈中的内容应用到当前目录,不同于git stash pop,该命令不会将内容从堆栈中删除,也就说该命令能够将堆栈的内容多次应用到工作目录中,适应于多个分支的情况。
6 git stash drop + 名称:从堆栈中移除某个指定的stash
7 git stash clear:清除堆栈中的所有 内容
8 git stash show:查看堆栈中最新保存的stash和当前目录的差异。通过 git stash show -p 查看详细的不同
同样,通过git stash show stash@{1} -p查看指定的stash的差异内容。
9 git stash branch
从最新的stash创建分支。
应用场景:当储藏了部分工作,暂时不去理会,继续在当前分支进行开发,后续想将stash中的内容恢复到当前工作目录时,如果是针对同一个文件的修改(即便不是同行数据),那么可能会发生冲突,恢复失败,这里通过创建新的分支来解决。可以用于解决stash中的内容和当前目录的内容发生冲突的情景。
发生冲突时,需手动解决冲突。