🦁
【Git】ブランチ間違えた&切り替えたい時のtips
はじめに
自分の git を使って開発しているときのあるあるとして
- ブランチ切るの忘れて作業してたー
- まだ作業途中だけど、他のブランチのレビューとか急ぎの修正しなきゃいけない
っていうようなことがあります
そんな時に使える Git コマンドです
コミットせずに変更内容を一時退避させる
git stash -u
一時退避させる時はこれです
最新のコミットの状態に戻すという感じですね
-uをつけると、追跡対象外のファイル(新規作成したファイル)も含めることができます
なので自分は最初から全て-uをつけています
退避させた変更内容を復元する
git stash apply
先ほどstashして退避させた変更内容はこのコマンドで復元します
自分は一回stashしてそれを戻すという使い方を基本的にするのですが、そもそもstashは 1 つだけではなく複数できるので、この復元コマンドは最新を対象にしています
他のコマンド
先ほども言った通り、自分は今までの 2 つのコマンドしか使っていません
ただ調べてみると他にもあって便利そうだったので、メモがてら書いていきます
stash した一覧を見る
git stash list
stashはどんどん溜まっていくので、listで前のものも確認できます
実際に使ってみました
stash@{0}: WIP on main: コミットハッシュ コミットメッセージ
stash@{1}: WIP on main: コミットハッシュ コミットメッセージ
このような感じで番号とstashした時点での最新コミットの情報が表示されます
このstash@{n}という部分で順番に番号が振られているのでこれを使うと最新以外のstashも復元することができます
特定の stash を復元する
git stash apply stash@{0}
先ほど見た一覧から復元したい番号を指定すればいいだけですね
まとめ
今回はgit stashについてでした
チーム開発中にさっと使えると便利なコマンドなので基本的なのだけでも覚えておきたいですね
ちなみに、applyで復元しても退避した情報は残ったままらしいです
そのため、消すコマンドや復元と同時に消してくれるコマンドもあるようです
その他の操作コマンドは以下の記事などを参考にしてみてください
Discussion