hot take
The only reason "squashing commits" is such a widespread practice with Git now, is that tools like Github are incapable of displaying the commit graphs correctly, and insist on linear display
"The commit history becomes messy" wouldn't be a problem at all if the UI actually showed which commits occurred on a side branch, that's what it's *for*
re: follow-up hot take
@farhaven It does have that feature today (though not everybody uses it for some reason), but it didn't in the past, and various other project management systems that were modelled after the Github UI unfortunately haven't copied that feature yet either.
(Though even with auto-squashing, that only really resolves the follow-up comment; it still wrecks the history)