A Practical Git Branching Workflow

Keep main deployable. Create short-lived feature/ branches, open pull requests, require review + CI, squash-merge, delete the branch.