pullしたいけど、今の状態でcommitしたくないのよね。(VS codeで)

複数人で同じリポジトリ使っていると、commitも気を使いますよね。。できるだけ、無意味なcommitは避けたいもの。commitをしないで、今の変更を取っておくstashをVS Codeで使ってみます。

こんな場合に

ブランチAで作業していました。

ブランチAに最新のMasterの変更をマージして作業しなきゃいけない事態に!????

Masterに切り替えて。。。あー駄目よね

ブランチAの変更commitしたくないな〜

作業中なんて意味のないcommitするのも、レビューする人に迷惑かけちゃいますよね。

そんな時は、stashを使って変更を保存しておきましょう!

実際stashしてみる

今回は、最小限のコマンドだけで。

変更を保存

はい、どっさり変更がある状態。。。。

けど機能として完成していないので、commitしたくない状態ですね。

VS CodeのSOURCE CONTROLペインで、stashで保存しておきたいファイルをStaged Changesに移しておきましょう。

メニューからStashコマンドを実行

Stashの名前の入力を求められるので、適当に入力してEnter

これで、保存されます。

stashしたファイルは、元の状態に戻っています。この状態で、Masterをマージするなり別ブランチの対応をするなりしてください。

変更を戻す

今度はstashで保存した内容を復元します。

メニューから今度は、Apply Latest Stashをクリック

のみです。

これで、SOURCE CONTROLペインに変更していたファイル群が表示されているかと思います。

ちなみに

メニューに表示される別コマンドについても簡単に触れておきます。

Latest表記があるコマンド

そのままですが、最新のstashを復元します。

複数stashしておけるんです。

なので、Apply Latest Stashだと、最新のstashを復元

Apply Stash… だと、stashを選択して復元ということです。

Pop

これは、Applyした後にDrop(削除)もしてくれます。

stashも複数回行うと溜まっていって、どれがどれだか分からなくなる事も有るかと思います。どんどんstashする人にはこちらが向いているかもしれませんね。

Drop

上記で少し触れましたが、stashを削除することができます。