I was today years old when I learned about CTRL+R. I've always just done history | grep
Also, I use zsh which filters history when using up/down arrows to whatever you typed. So you can do "git" [up] [up] [up] to cycle through all recent git commands which is super useful.