I recently left a large codebase that didn't branch. I worked in this code base for 3 years.
As a result, we were forced to cherry pick change sets ready to deploy into a stage branch.
Once stage was certified, we had to again cherry pick change sets into a release branch.
The amount of feature flags required to support this would have been unmaintainable.
The amount of bugs that resulted from this were incredible.
The only way to describe it was a nightmare.
I don't see any possible way a large team can work in this environment.
I would never recommend "no branches" to a team over 3 people.
Because you guys were branching you had all those problems, from your comment I can see at least 3 branches being used.
That was not the cause of the problems. It was the symptom.
The cause was a failure to create a proper branching strategy from the beginning.
No it isn't. Your problem is you are scared to release your own software and instead you are cherry picking changes in your trunk.
Being scared lol. I can tell if you are you being serious or a troll. Has to do with a multi tenant platform that has SLA with it's clients that gives a 30 day review period to sign off on any changes before prod it's updated.
There are legit compliance reasons for staging deployments.
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.