I read you completely. Took 5 minutes thinking about it and trying to be in your shoes, and yet.. I cannot agree. As others said: I really respect your way of viewing things and, Man, honestly: If it works for you, then Congrats! There is more than a single way of achieving things in programming.
But what works for me is to have feature branches and merge: A wild conflict appears and we resolve it. We check that the resolution works (QA again) and Done!
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.