Stash Changes… VS Shelve Changes…
两个功能一样,都是将本地代码暂存搁置
使用场景:本地 A 分支写了一半代码,但是突然有个紧急 bug ,需要切换到 B 分支去修复。这时候不想提交 A 分支的代码,就用这两个命令(随便其中一个)将其暂存搁置。然后切换到 B 分支修复 bug,修复后再切换到 A 分支,使用 Unstash Changes… / Unshelve… 恢复暂存代码。
区别在于
- stash changes… 是 git 原生的
- shelve changes… 是 idea 独有的
不用 太纠结,能达到目的即可。
stash changes… && unstash changes… (搁置代码 && 释放代码)
shelve change(简单理解:搁置暂未提交的代码到架子上)
unshelve… (把架子上的代码释放出来)