🐡
最近switchしたbranchを選択する
tl;dr
[alias]
sww = switch -
swww = !git reflog | sed -n 's/.*checkout:.* to \\(.*\\)$/\\1/p' | awk '!seen[$0]++' | fzf | xargs git switch
経緯
-
git switch -
で直前のbranchに戻るのはよく使う(git swwにしてる) - けど、並行して複数branchで作業してると2,3個前に戻りたいってこともある
- そういうオプションってあるの? ないの? しらべてみました! → よくわかりませんでした
- reflogから取ればいけるか?
!git reflog | sed -n 's/.*checkout:.* to \\(.*\\)$/\\1/p' | awk '!seen[$0]++' | fzf | xargs git switch
- これをgit swwwに設定して2ヶ月位運用してるけどわりといいかもしれないので書きました
課題
- 削除済みbranchも出てしまう(そんなに支障は無いが)
Discussion
@{-N} のNを2,3とかにしてswitch/checkoutに指定すると行けます。同様にreflogから取ってます。
ありがとうございます
やりたかったのは
というものなので、直に2個前や3個前など指定するという運用は考えてなかったです(どのブランチだか分かんないので)