Visual Studio でソースの編集箇所を git stash で退避する
改修作業中に「やっぱりこっちのバグを先に直して!」という声をかけられることも多々あります。
Git の場合、修正内容をコミットするか、元に戻さないとブランチを切り替えられませんが、git stash で修正内容を一時的退避することもできます。
git stash
git stash は変更内容を退避させるコマンドです。https://git-scm.com/docs/git-stash
GUIで操作できるこんな拡張機能もありますが、残念ながら Visual Studio 2017 には対応していません。
GitStash
仕方がないので、[チームエクスプローラー] の [アクション] をクリックしてコマンドを打ちます。
単純な編集だけであれば git stash だけで OK です。
新規ファイルを追加している場合、git stash だけだと追加したファイルがステージングに残り続けてしまうので、git stash -u を打ちます。
割り込み作業が終わった後は、git stash apply で退避ファイルを戻すことができます。
ただ、この場合は stash 内容が消えません。
退避内容を適用して消したい場合は git stash pop です。
退避ファイルがいくつもある場合は、git stash list でどのファイルを戻すのか確認してから戻します。
割り込みのバグ修正がはかどりますね。