🦁
【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