Git gives you the tools to allow any member of the team to reconcile those histories cleanly for others.
Forcing everyone to be in sync all the time also means lots of merge conflicts.
Git allows for everyone to drift in their own way and provides tools for them to reconcile that drift in a way that others can integrate easily.
Until you embrace the distributed nature and start using tools to manage your history (rebase & reset) , you will suffer with git.
I cringe when editors refer to "rebase & reset" as "weird".
Rebase and reset are the primary power tools of git. Along with reflog, revert, interactive-add .
The worst repositories I've seen are people who `git merge` 20x a day to stay "in sync" and create labyrinthian change logs that are impossible to parse.