Git Stash を使う
Git を使っていて、コミットはしないけどブランチ切り替えとかでローカルの変更を退避したい。そんなときには git stash
コマンドを使う。
# ローカルのコミット前の変更を保存する (どっちでも同じ)
$ git stash
# (こっちでも同じ)
$ git stash save
# 保存されている Stash の一覧を確認する
# Stash の名前は「stash{0}」などと振られていることが分かる
$ git stash list
# Diff 付きで確認するには -p オプション
$ git stash list -p
# Stash に含まれるファイル名などを確認する
# ココでは「stash{0}」を確認する例
$ git stash show stash{0}
# Stash 一覧から指定の Stash を取り出してローカルに反映し直す
# 一覧には当該 Stash が残ったままになる
$ git stash apply stash{0}
# Stash 一覧から指定の Stash を消す
$ git stash drop stash{0}
# 指定の Stash を取り出してローカルに反映し、一覧から消す
# (apply と drop を同時に行う)
$ git stash pop stash{0}
基本は
git stash
で保存し、git stash list
で Stash の名前を確認し、git stash pop stash{0}
でローカルに反映し直す
という使い方になるかと。覚えてしまえば便利。