Gitでコミットせずに一時保存するgit stashの使い方
作業が途中でコミットしたくないけど、別のブランチで作業しないといけないといったことが起こります。
そういうときに変更途中のものをコミットせずにいったん保存して一次避難させることができます。
目次から読む
コミットせずに一時保存するgit stash
git stash
git stash save
上のどちらでもOKです。
stashは隠すの意味です。
ワークツリーにある変更とステージにある変更をstashという場所に一時格納させることができます。
そのためワークツリーとステージに変更がなかったこととして作業することができます。
一時避難させた情報を確認する方法
git stash list
とすると避難した作業の一覧を表示することができます。
避難した作業を復元する方法
最新の作業を復元する
git stash apply
applyは、ステージの状況は復元しません。
ステージの状況も復元する
git stash apply --index
特定の作業を復元する
git stash apply スタッシュ名
スタッシュ名とは、stash@{インデックス番号}}などと表します。
インデックス番号はgit stash listで確認することができます。
一時避難した作業を削除する方法
最新の作業を削除する
git stash drop
特定の作業を削除する
git stash drop スタッシュ名
全作業を削除する
git stash clear