「あ、間違えて違うブランチでファイル変更しちゃった」ときの対処法【git stash】
投稿日: 2024年12月16日
ブランチAで作業しなくてはいけないのに、ブランチBで作業してしまった。。
しかも、結構たくさんのファイルを変更してしまった。。
差分がある状態でブランチAに移動しようとするとエラーが出るし、ブランチBにコミットはしたくない。。
差分を加えたファイル全て手作業でコピーして、どこかに退避させる??
めっちゃだるいよ??
こんな時に使えるのが git stashコマンドです。
↓ 例として、feat/blogブランチで作業したかったのに、mainブランチで差分を加えてしまったとします。
↓git stashコマンドを打ちます。
↓差分が消えます。(一時退避された状態になります。)
↓元々作業したかったfeat/blogブランチに移動します。
↓git stash popコマンドを打ちます。
↓退避させていた差分が復元します!
これで、feat/blogブランチに差分を移動させることができました。
git stashコマンドでは、複数の差分を登録することができます。
git stashコマンドを連続で行うと、古い方が消えるわけでなく、配列式で記録が増えていきます。
git stashした差分の一覧を見たい時は、git stash listコマンドで一覧表示できます。
git stash popコマンドは、最後にgit stashした履歴を復元するコマンドですが、
n番目の履歴を復元したい場合は、git stash pop stash@{n} と打つことで、n番目の退避データを復元することができます。