どんなときに git stash を使うのか?
「今この Issue やってるけど、この前出したプルリクのレビューがきた。少ない修正なので、そっちをすぐやってまたプルリクを出したい。」
Git では、今いるブランチで変更を加えてから別のブランチへ移動すると、その変更分まで影響してしまう。
たとえば、ブランチA で作業をしていて、ブランチBをすこし修正したいと思ったとき。
なにもせずに
#ブランチAにいると仮定して git checkout ブランチB
をすると、ブランチAの変更が、ブランチBにまで移動してしまう。
このとき、stash で今の変更分を一時退避させることができる。
# ブランチA $ git stash
こんな感じで、作業中の変更点を一時的に脇においておける。
git stash 使い方
一時退避させる。
$ git stash
コメントをつけて stash する方法もある。
$ git stash -u "コメント"
そのブランチで最後のstashした変更を反映したいとき(戻したいとき)
$ git stash apply
stashした作業リストを一覧する。
$ git stash list stash@{0}: On textarea-autosize: テキストエリアのリサイズ
退避した変更点を指定して取り出す。
git stash apply stash@{0}