Git stash 的用法,将暂存区的内容缓存并移除,解决切换分支前的内容缓存问题
1.保存2.重新应用缓存的stash3.查看stash4.移除5 查看指定stash的diff6 stash指定的文件
·
git stash
- 如果当前分支还有任务没有做完,也不想提交,但此时需要切换或者创建其它分支,就可以使用stash将当前分支的所有修改(包括暂存区)先储藏起来;然后就可以切换到其它分支
- 在其它分支工作完成之后,首先切换回原来的分支,然后使用
git stash list
命令查看 - 可以使用
git stash apply <stash number>
恢复之前储藏的工作现场,再使用git stash drop <stash number>
删除掉储藏的内容 - 也可以直接用
git stash pop
恢复并删除内容
1.保存
$ git stash
解释:会把所有未提交的修改(包括暂存的和非暂存的)都保存起来
$ git stash save "messeag"
解释:会把所有未提交的修改(包括暂存的和非暂存的)都保存起来,并增加说明
$ git stash save -u "messeag"
解释:会把所有未提交的修改(包括1.暂存的;2.非暂存的;3.新加入的代码文件:untracked files)都保存起来,并增加说明
$ git stash save -a "messeag" 不建议用
解释:会把所有未提交的修改(包括1.暂存的;2.非暂存的;3.新加入的代码文;4.其他隐藏文件)都保存起来,并增加说明;不建议用
2.重新应用缓存的stash
$ git stash pop
解释:这个指令将缓存堆栈中的第一个stash删除,并将对应修改应用到当前的工作目录下
$ git stash apply
解释:将缓存堆栈中的stash多次应用到工作目录中,但并不删除stash拷贝
3.查看stash
$ git stash list
解释:在使用git stash apply命令时可以通过名字指定使用哪个stash,默认使用最近的stash(即stash@{0})。
4.移除
$ git stash drop stash@{0}
解释:删除指定的stash
$ git stash clear
解释:删除所有缓存的stash
5 查看指定stash的diff
$ git stash show
解释:查看指定stash的diff,后面可以跟着stash名字
$ git stash show -p
解释:在该命令后面添加-p或--patch可以查看特定stash的全部diff
6 stash指定的文件
1.多个文件
git stash push <file1> <file2> <file3> [file4 ...]
2.单个文件
git stash push -m "message" file_path
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献2条内容
所有评论(0)