Developer commits can go directly to the dev branch, feature branch, or (in an unofficial setting) main, but ideally there is an autorun of unit tests. This can happen in a variety of ways. The options are endless via pre-commit hooks and commit hooks. However, as a result, code changes will not be accepted by the branch unless they pass unit tests.
Devops Take a bird’s-eye view that includes both development and operational activities and choreograph them to interact in the most effective way. This is a conceptual ideal, but from a technical point of view, can you describe an ideal DevOps setup?