New changes are made in the dev repository, and major changes like overhauls are made in a new branch. For example, a new camera system will have a new branch, called camera-system or something like that, be created.
Changes are pushed to main from dev. Simple enough.
A lengthy project to recreate Geometry Dash (badly in retrospect) in Unity.