I made a lovely little TUI for this, with Charm (https://charm.sh)
https://github.com/tyre/recent-branches
Enjoy!
Here is a much, much, much lighter weight version I've been using since forever:
gi() { git branch --sort=-committerdate |\ grep -v '^\*' | cut -d' ' -f3 | fzf |\ xargs git checkout }
Here is a much, much, much lighter weight version I've been using since forever:
fzf handles the TUI part