1、基本操做
當你正在作一項複雜的工做時, 發現了一個和當前工做不相關可是又很討厭的bug. 你這時想先修復bug再作手頭的工做, 那麼就能夠用 git stash 來保存當前的工做狀態, 等你修復完bug後,執行'反儲藏'(unstash)操做就能夠回到以前的工做裏.
$ git stash save "work in progress for foo feature"
上面這條命令會保存你的本地修改到儲藏(stash)中, 而後將你的工做目錄和索引裏的內容所有重置, 回到你當前所在分支的上次提交時的狀態.
好了, 你如今就能夠開始你的修復工做了.
... edit and test ...
$ git commit -a -m "blorpl: typofix"
當你修復完bug後, 你能夠用git stash apply來回復到之前的工做狀態.
$ git stash apply
2、儲藏隊列
你也可屢次使用'git stash'命令, 每執行一次就會把針對當前修改的‘儲藏’(stash)添加到儲藏隊列中.
用'git stash list'命令能夠查看你保存的'儲藏'(stashes):
$>git stash list
stash@{0}: WIP on book: 51bea1d... fixed images
stash@{1}: WIP on master: 9705ae6... changed the browse code to the official repo
能夠用相似'git stash apply stash@{1}'的命令來使用在隊列中的任意一個'儲藏'(stashes).
'git stash clear‘則是用來清空這個隊列.