Falando de forma geral, o Git é flexível o suficiente pra vc adaptar da forma que achar melhor. Eu sugiro vc usar tudo que descreveu acima por um tempo e ver como se sai. Certamente vai perceber vantagens e desvantagens, coisas que dá pra manter e outras que dá pra melhorar, e de tempos em tempos faça alguns ajustes. É assim - ou pelo menos deveria ser - com qualquer metodologia.
As "boas práticas" que vc vê por aí são apenas recomendações, no máximo um ponto de partida. Eu acredito que nada disso é uma "lei escrita na pedra" que deva ser seguida à risca em 100% dos casos. Tudo pode - e deve - ser adaptado para cada caso específico.
E tudo depende do contexto. Eu, por exemplo, trabalho com vários fluxos diferentes, dependendo do tipo de projeto:
- tenho um projeto pessoal no qual sou o único contribuidor. Então não tem nem branches, faço tudo no
main. Exceto num ou outro caso em que quero fazer algum teste muito fora da caixa, aí eu crio um branch, mas no fluxo normal não preciso - em projetos do trabalho, depende. Tem projetos que só uma equipe mexe, aí usamos um branch por feature, e branches hotfix para correções emergenciais (é tipo um Git Flow, mas um pouco mais simplificado)
- mas já trabalhei em projetos maiores, com várias equipes mexendo em coisas diferentes ao mesmo tempo. E aí o fluxo é mais complexo, inclusive com uma equipe que centraliza os PR's
Enfim, se o fluxo que vc definiu te atende bem, não tem problema nenhum. Lendo por cima, me parece ok, mas só depois de usar por um tempo é que vc vai poder concluir se ele é adequado ou não para as suas necessidades.