O Git é flexível o suficiente para permitir uma variedade enorme de workflows diferentes. Existem alguns mais comuns, listados na documentação oficial, cada um com seus prós e contras, e situações em que são mais adequados que outros. E nada impede que vc crie um próprio, ou adapte um dos existentes para as suas necessidades.
Inclusive a decisão de hospedar os projetos no GitHub (que permite repositórios privados) ou em qualquer outro serviço similar (GitLab, Bitbucket, etc) são alternativas que devem ser discutidas e adaptadas para cada contexto.
Aliás, existe também a possibilidade de vcs terem seu próprio servidor. Por exemplo, vc pode ter sua instância do GitLab, instalada na infra-estrutura da própria empresa, assim vc tem controle total sobre ela (a desvantagem é que será mais uma coisa pra vcs cuidarem, e é algo que deve-se discutir se vale a pena).
Enfim, são inúmeras opções. Não se apegue a um workflow e/ou serviço específico. Discuta as necessidades do seu time, e veja qual a alternativa mais viável e que seja adequada ao seu contexto.