前言
在开发过程中,可能会遇到在 A 分支开发了部分功能,这时需要切到 B 分支解决 Bug,但 A 分支的内容由于各种原因又不能提交。在这种应用场景下,我们可以使用 git stash
命令把代码暂存,然后切到其它分支进行操作。
实现
命令
# 保存所有未提交的更改并重置工作目录。这时可以切换到其他分支或执行其他任务
git stash
# 还原最新的暂存更改到工作目录中,但不会从暂存堆栈中移除它
git stash apply
# 还原最新的暂存更改并将其从暂存堆栈中移除
git stash pop
如果有多个暂存的状态,并且想要选择性地恢复或删除特定的暂存更改,可以使用如下命令查看暂存堆栈的状态:
git stash list
使用如下命令来操作特定的暂存更改:
git stash apply stash@{<num>}
# 或者
git stash drop stash@{<num>}
使用 git stash
暂存的代码,切换分支后不会丢失更改的代码,且在暂存命令之后使用 git commit
、git push
命令不会把暂存的代码 push 到远程分支。
总结
在开发中,git stash
命令可以让我们十分灵活的切换分支。