I want to commit to a branch other than my main branch

Currently, only main branches and dynamically generated branches can be pushed.
It would be much easier to manage git commit history and branches if you could easily switch which branches to push.