From the original poster:
If you look at Git branch structure mapping (where I got the command from), the screenshot shows the "branches" and "merges"

If you want to see diverging branches in the log output, you must have a merge commit. In fact, you have not done any unrealizable merges (which will lead to merge commands), so you see, indeed, all your branches with the master parent thread dev and dev parent thread API .

You will begin to view merge commits if you merge without quickly moving the API to the dev branch, for example:
user456814
source share