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.