No, that doesn't mean it shows all the latest commits. It shows all commits in the history of branches, tags and other refs, but it does not show commits that are not reachable from any ref. A typical example of a commit that is not reachable from any ref is when you've just run git commit --amend: the previous commit still exists locally, but it's no longer reachable and won't be shown in git log --all. But git reflog will confirm that it does indeed still exist.
As for why --all isn't the default: you normally won't want that. For instance, if you're on branch master, and you run git log, you typically aren't interested in the history of any feature branches, you typically want to see the history of master.
If you do normally want the --all behaviour, I recommend creating an alias.
No, that doesn't mean it shows all the latest commits. It shows all commits in the history of branches, tags and other refs, but it does not show commits that are not reachable from any ref. A typical example of a commit that is not reachable from any ref is when you've just run git commit --amend: the previous commit still exists locally, but it's no longer reachable and won't be shown in git log --all. But git reflog will confirm that it does indeed still exist.
As for why --all isn't the default: you normally won't want that. For instance, if you're on branch master, and you run git log, you typically aren't interested in the history of any feature branches, you typically want to see the history of master.
If you do normally want the --all behaviour, I recommend creating an alias.
According to a post here git --all missing commit:
log --all is only for listing commits referenced in refs/ (like tags, heads, ...)
The same page also says:
The --all option does not tell git log to display all commits. It asks for the logs of all refs, basically your branches and tags.
Videos
Try:
git log --reflog
which lists all git commits by pretending that all objects mentioned by reflogs (git reflog) are listed on the command line as <commit>.
What saved my life was the following command:
git reflog
There you find a screen with history commits done to git like this one:

At this point, you only have to find the HEAD@{X} that you need, create a temporary branch and move to it like this:
git checkout -b temp_branch HEAD@{X}
That way you will have a temporary branch with your lost commit without rebasing or breaking even more your git repository.