🪬
stashを消してしまった時の戻し方
stash は pop コマンドや drop コマンドで削除できます。
今回は間違えて stash を削除した場合に復元する方法を紹介します。
問題
stash を drop コマンドで以下のように削除してしまいました。
git stash drop stash@{2}
解決方法
「git reset --hard
」や「git rebase
」などを間違えて実行してしまった時は、「git reflog
」によって取り消せますよね。
しかし、スタッシュを消してしまった時は reflog で取り消すことができません。以下のコマンドを実行することで戻すことができます。
stash を drop した時には、以下のようにカッコの中に文字列が表示されていると思います。
$ git stash drop stash@{2}
Dropped stash@{2} (xxxxxxxxxxxxxxxx)
その文字列をコピーして、以下のコマンドを実行することで戻すことができます。
git cherry-pick -n -m1 (xxxxxxxxxxxxxxxx)
Discussion