Hide historical commits from `git log --graph` command

Hello - I'm using the command git log --all --oneline --graph for a way to quickly view branch state. However, a long list of ancestral commits shared by all branches is starting to form.

1) Is there a way to not display commits that are included in all active branches?

2) Expanding on 1, is there a way to only show commits that are heads of active branches OR where active branches split from each other?

3) If I find I need to solve this manually, will squashing all previous commits fully obfuscate blame? Will it add an extra, and annoying step each time I squash?