概要
开发时遇到的问题:一个新的功能开发到一半,常常会因为要解决一个bug而需要暂停目前开发的功能,因为git log每次最好提交一次的修改,因此,使用git stash将目前已经开发了部分的内容保存在堆栈中,随后保持一个干净的工作区非常重要。
架构分析
// TODO
适用情景
项目开发到一半时的git status:
需要保存当前开发的内容 git stash save “[chg]:修改awbm到一半。”:
git stash list查看缓冲区的内容;git stats查看工作区文件和上次git pull相比做了什么修改:
得到结论:git stash指令执行Git会将当前未提交的工作区和暂存区的修改打包成一个记录,并清空相应的工作区和暂存区,让你可以先切换到其他分支或者进行其他操作,而不必提交当前的修改。每个stash记录都有一个唯一的标识符,可以用于在之后的操作中引用该stash记录。
恢复缓冲区的数据:git stash apply -n(对应的标识符号)。如果恢复的文件与当前未提交的修改没有冲突,则可以直接恢复,否则需要通过处理文件中内容解决问题。 此时工作区与缓冲区已经恢复。
文章来源:https://www.toymoban.com/news/detail-654032.html
扩展的指令
命令名 | 命令解释 |
---|---|
git stash | 隐藏当前的工作现场至缓冲区, 此时, git status的结果是 clean |
git stash list | 查看所有隐藏的缓冲区, 每一行的冒号前面的字符串就是标识此隐藏的id |
git stash apply | 重新显示标识为 id 的隐藏 |
git stash drop | git apply恢复隐藏后, 需要手动删除 list 列表中的记录 |
git stash pop | 恢复最新的进度到工作区。与git stash apply类似。对应的区别:这条指令在恢复的同时,会将对应的缓存在stash列表删除 |
git stash pop stash@[stash_id] | 恢复指定的进度到工作区 |
小结
git stash 命令的常用的一些总结,以及什么情况下需要使用这条命令。文章来源地址https://www.toymoban.com/news/detail-654032.html
到了这里,关于git stash:保存本地修改及恢复的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!