有时,当你在项目的一部分上已经工作一段时间后,所有东西都进入了混乱的状态, 而这时你想要切换到另一个分支做一点别的事情。 问题是,你不想仅仅因为过会儿回到这一点而为做了一半的工作创建一次提交。 针对这个问题的答案是
贮藏
命令。 ——《Pro Git》
比如我接到一个开发任务,首先我从 master 分支创建并切换到 dev 分支上开发任务。当我的开发进度进行到一半的时候,突然要修改 master 分支上的代码,但是此时我的 dev 分支的工作区有很多已修改文件,而且我也不能提交(commit
)代码,因为功能还没经过测试。如果我直接切换到 master 分支,这些修改内容也会被带到 master 分支的工作区。现在想要切换分支,但是还不想要那些更改一半的内容;这时可以使用贮藏(stash
)。
贮藏
在 TortoiseGit 中,使用贮藏的方法为:选择仓库,单击鼠标右键,在弹出的菜单中选择 TortoiseGit - Stash changes
。
Stash Message
:对要贮藏的情况描述(允许什么也不填,此时 TortoiseGit 自动填入最近一次提交的信息)include untracked
:贮藏未跟踪文件--all
:贮藏所有文件
注:贮藏实际上是将相关文件压入栈。
恢复贮藏
当TortoiseGit检测到存在贮藏的更改时,将扩展几个右键菜单:Stash Apply
、Stash Pop
、Stash Lish
。
Stash Apply
:将最后一次贮藏的更改恢复到工作区(可能要按住Shift
再鼠标右键单击才能看到这个菜单)Stash Pop
:将最后一次贮藏的更改恢复到工作区,并且从栈中删除最后一次贮藏的更改。Stash Lish
:提供整个贮藏栈的概述,可以在此处查看或删除贮藏的更改。
一般情况下,使用Stash Pop
来恢复贮藏的更改。
读后有收获,资助博主养娃 - 千金难买知识,但可以买好多奶粉 (〃‘▽’〃)