On the path to wielding git like a pro, there are many steps.
The first step is to see what you're doing. An off-the-shelf git log:
Ahh! I can't see a thing. Most of that output is names & emails, and very precise dates. Don't need 'em! This is about understanding and visualising the repo, not exact details of a commit. So less of that, and more of the important stuff: refs and messages.
Compact, readable, and other lovely things. But this list still doesn't help us understand and visualise the repo. And, that's why: it's a list. That's misleading! Git commits don't form a flat list, they form a graph.
Aha! Now it's taking shape.
Notice how the merge commit really stands out here, whereas above it isn't distinguised fron the content commits around it. Looking at the graph, we can see it was those five commits that the merge introduced; that information is also obscured in the list.
These details start to become really important when you're commiting and merging across multiple branches - perhaps rebasing local changes against a remote as well. If you work with the graph, you can do those things quickly and reliably. Switch to list view and you're up the creek.
The last step is to customise the log format to include tags, nearby topic branches, and the position of the remotes as decorations. Here's what it looks like in my terminal:
Here's the full command. I alias it to
git log --graph --pretty="format:%C(yellow)%h%Cblue%d%Creset %s %C(white) %an, %ar%Creset"
I can't overstate the value of a good git logging format like this -- one that shows you a truthful picture of the graph, and that you can invoke with muscle memory. It'll change the way you use git.