You can't. Be serious.
I started writing programs in the 70s, and by the 80s, I was making a living that way.
The "QA cycle" was very familiar to me, but what made it miserable was regressions. Inevitably, each QA cycle found not only bugs in new code, but new bugs in old code created during maintenance - regressions.
Automated testing is the only way to reduce regressions. Before automated testing, as systems got bigger and bigger, development became paralyzed, as any change anywhere might break some other part of the system and you would never know.
I run my automated tests dozens, sometimes hundreds of times a day, and they catch hundreds of minor mistakes and dozens of serious ones a week.
I can do things like completely rewrite a subsystem on a weekend and drop it in, something I'd never have dared to do in 1985, because I have a battery of tests to prove the new code and the old code are the same.
Don't get me wrong - QA is essential, but you don't want to waste your QA resources on each commit ID as you seem to believe we should!